我有一个多维数组,如下所示:
$adminoptions = array(array("hello","replies",0),array("goodbye","replies",1),array("hola","flagged",0));
我想要的是“再见”,“回复”和“#1;'来自$adminoptions[1]
。我知道我可以使用下面的代码,但我不希望遍历每个代码 - 相反,我希望能够执行$adminoptions[goodbye]
之类的代码:
foreach($adminoptions as $array) {
if($array[0] == 'goodbye') {
echo ' 1) '.$adminoptions[1][0]; // goodbye
echo ' 2) '.$adminoptions[0][1]; // replies
echo ' 3) '.$adminoptions[0][2]; // 1
}
}
以下是我希望能够做到的一个例子:
echo ' 1) '.$adminoptions[goodbye][0]; // goodbye
echo ' 2) '.$adminoptions[goodbye][1]; // replies
echo ' 3) '.$adminoptions[goodbye][2]; // 1
答案 0 :(得分:2)
如果你不创建数组并假设每个子数组的0
索引是唯一的,那么只需提取它们并用0
索引处的值索引:
$adminoptions = array_column($adminoptions, null, 0);
echo $adminoptions['goodbye'][0];
如果你确实创建了数组,那么只需添加一个键:
$adminoptions = array("hello"=>array("hello","replies",0));
echo $adminoptions['hello'][0];