2011-12-05 64 views
-1

我試着去尋找一個陣列,並導航到下一個和前值使用array_search()找到PHP

$ids=$res->result_array(); 

回報

array(3) { 
    [0]=> 
    array(1) { 
    ["qid"]=> 
    string(5) "63697" 
    } 
    [1]=> 
    array(1) { 
    ["qid"]=> 
    string(5) "63706" 
    } 
    [2]=> 
    array(1) { 
    ["qid"]=> 
    string(5) "63709" 
    } 
} 

值,但是當我嘗試搜索索引返回false

$curr_index = array_search($this->uri->segment(4), $q); 

回報

bool(false) 

$ this-> uri-> segment(4)是qid。

我想通過增加和減少一個數組來導航,所以我可以得到下一個和以前的值。

有人可以告訴我在這裏做錯了什麼?

+0

您的數組是多維的。 array_search將僅搜索第一級,並且由array,array,array組成。另外,請指出爲什麼沒有http://stackoverflow.com/search?q=search+multidimensional+array+php回答你的問題。 – Gordon

+0

可能重複的[多維數組中的PHP搜索鍵](http://stackoverflow.com/questions/4388967/php-search-for-key-in-multidimensional-array) – Gordon

+0

@戈登我沒有注意到第二個和我看到的大部分回覆都沒有array_search()。謝謝您的幫助。 :) – LiveEn

回答

2

你有一個數組的數組,你可以搜索這樣的:

$curr_index = array_search(array('qid' => $this->uri->segment(4)), $q); 

如果你實際上是在尋找一個數組,而不是字符串。

工作例如:http://codepad.viper-7.com/Ff0sAq

+0

謝謝...完美的工作 – LiveEn