讓我們假設我知道有關鍵「twoVal」,但我不知道它後面是什麼。我如何才能達到這個問題的下一個關鍵?我知道關鍵「twoVal」的位置?或者有另一種方法?進入數組中的下一個鍵
$arr = array('Cool Viski' => array('oneVal' => '169304',
'twoVal' => '166678',
'threeVal' => '45134'));
讓我們假設我知道有關鍵「twoVal」,但我不知道它後面是什麼。我如何才能達到這個問題的下一個關鍵?我知道關鍵「twoVal」的位置?或者有另一種方法?進入數組中的下一個鍵
$arr = array('Cool Viski' => array('oneVal' => '169304',
'twoVal' => '166678',
'threeVal' => '45134'));
您可能會感興趣的各種array seeking functions,但除非PHP陣列由僅整數索引有沒有順序上的按鍵保證。
$keys = array_keys($arr['Cool Viski']);
$position = array_search('twoVal', $keys);
if (isset($keys[$position + 1])) {
$keyAfterTwoVal = $keys[$position + 1];
}
$arr = array('Cool Viski' => array('oneVal' => '169304',
'twoVal' => '166678',
'threeVal' => '45134'));
foreach($arr as $s=>$v){
foreach($v as $val){
if(key($v) == "twoVal"){
$t=next($v);
print "next key: ".key($v)."\n";
print "next key value is: ".$t."\n";;
}else{
next($v);
}
}
}
從http://php.net/manual/en/language.types.array.php摘自:'PHP中的數組實際上是一個有序map.'我會說,這是一個保證按鍵的順序。 – Jasper 2012-11-06 16:31:02
另外,這並不是解決給定問題的一種方法,因爲您首先需要使用已知密鑰來獲取指向元素的內部指針,而這無法有效地完成,就我所能看到的你正在鏈接到。 – Jasper 2012-11-06 16:34:34