這是我用它來找到一個陣列中的所需項的關鍵方法,如何獲取數組中的請求項的密鑰?
$items = array
(
'0' => array
(
'mnu_id' => '1',
'pg_url' => 'home'
),
'1' => array
(
'mnu_id' => '5',
'pg_url' => 'about'
),
'2' => array
(
'mnu_id' => '6',
'pg_url' => 'venues'
)
);
所以,如果我要求「場地」的值,
while ($current = current($items))
{
if ($current['pg_url'] == 'venues') {
$current_key = key($items);
}
next($items);
}
echo $current_key;
我拿到鑰匙,其是2.
我不太喜歡這種方法,因爲它有點冗長,當使用while()
來循環數組時,它使我感到困惑。我不明白爲什麼我必須在代碼中使用next()
!
我想知道是否有更好的方法來獲得鑰匙?
您必須使用next(),因爲它提前了數組指針。請在PHP手冊中查找current/next/key。 – Gordon