2012-05-22 111 views
-2

我有類似如下的數組:PHP - 搜索數組

Array ( 
[0] => Array ( 
[slideID] => 3 
[parentSlideID] => 1 
[subSlideOrder] => 1 
[headline] => 
[copy] => 
[colourID] => 0 
[URL] => 2.jpg 
[category] => 1 
[visible] => 1 
[slideOrder] => 2 
[type] => 0) 

[1] => Array ( 
[slideID] => 3 
[parentSlideID] => 1 
[subSlideOrder] => 1 
[headline] => 
[copy] => 
[colourID] => 0 
[URL] => 2.jpg 
[category] => 1 
[visible] => 1 
[slideOrder] => 2 
[type] => 0) 

[2] => Array ( 
[slideID] => 3 
[parentSlideID] => 0 
[subSlideOrder] => 1 
[headline] => 
[copy] => 
[colourID] => 0 
[URL] => 2.jpg 
[category] => 1 
[visible] => 1 
[slideOrder] => 2 
[type] => 0) 
) 

我如何可以搜索陣列,這樣我可以在每個子陣列的檢查parentSlideID的值,然後返回鍵它找到一個匹配。例如,在數組中搜索「1」將返回0,1。搜索「0」將返回2。搜索「3」不會返回任何內容。這可能嗎?

+1

這已問過幾次了。例如,http://stackoverflow.com/questions/5835660/searching-within-all-keys-in-a-multidimensional-array-php –

+0

@Donut如果你不想回答這個問題,不要!問題是幫助某人並獲得代表的機會。如果問題沒有給你足夠的信息來回答它,那麼請求更多。否則,當我的答案將非常簡單時,我列出了我所嘗試過的內容。 –

+0

如果答案很簡單,爲什麼不自己回答? – Robik

回答

5

這應有助於:

foreach($array as $key=>$value) 
{ 
    if($value['parentSlideID'] == $searchvalue) 
     $results[]=$key; 
} 
2

這是你在找什麼?

<?php 
$needle = "1"; 
foreach($array as $key=>$value) 
{ 
    if($value['parentSlideID']==$needle) 
    { 
     echo "$array[".$key."] is equal to: ".$needle; 
     break; 
    } 
} 
?>