PHP:通过值而不是数组索引从数组中回显项目
PHP: echo item from array by its value instead of by its array index
我有一个数组,其中为每个项目存储了两个值,第一个称为 "ID"
,第二个称为 "en"
。
ID 值是唯一的整数,en 值是文本。
现在我想回显数组中通过 ID 引用它的特定项目。
我尝试了下面的方法,但是这是按照数组中的索引进行的,所以它给了我一个与我需要的不同的项目。
谁能告诉我如何 echo 例如ID = 10 的项目而不是数组索引 = 10 的项目(这里它目前给我 Value11 而不是 Value1)?
我的PHP:
<?php echo $arr[10]["en"]; ?>
数组:
Array (
[0] => Array ([ID] => 10 [en] => Value1 ),
[1] => Array ([ID] => 11 [en] => Value2 ),
[2] => Array ([ID] => 12 [en] => Value3 ),
// ...
[10] => Array ([ID] => 20 [en] => Value11 ),
// ...
)
非常感谢,
麦克
function FindByID($arr, $id) {
foreach($arr as $item) {
if ($item['ID'] === $id) return $item['en'];
}
return null;
}
echo FindByID($arr, 11);
我想你希望当你传递任何值时,它会检查该值存在于多维数组的 id
索引处,并给出它的 key
和 en
索引值。
<?php
$array = Array (
'0' => Array ('ID' => 10, 'en' => 'Value1' ),
'1' => Array ('ID' => 11, 'en' => 'Value2' ),
'2' => Array ('ID' => 12, 'en' => 'Value3' )
);
function findKeyandValue($array,$value){
foreach($array as $key=>$val){
if($val['ID']== $value){
echo 'key of the value pass='.$key.'and its en value is'.$val['en'].'<br>';
}
}
}
findKeyandValue($array,10);
?>
我有一个数组,其中为每个项目存储了两个值,第一个称为 "ID"
,第二个称为 "en"
。
ID 值是唯一的整数,en 值是文本。
现在我想回显数组中通过 ID 引用它的特定项目。
我尝试了下面的方法,但是这是按照数组中的索引进行的,所以它给了我一个与我需要的不同的项目。
谁能告诉我如何 echo 例如ID = 10 的项目而不是数组索引 = 10 的项目(这里它目前给我 Value11 而不是 Value1)?
我的PHP:
<?php echo $arr[10]["en"]; ?>
数组:
Array (
[0] => Array ([ID] => 10 [en] => Value1 ),
[1] => Array ([ID] => 11 [en] => Value2 ),
[2] => Array ([ID] => 12 [en] => Value3 ),
// ...
[10] => Array ([ID] => 20 [en] => Value11 ),
// ...
)
非常感谢, 麦克
function FindByID($arr, $id) {
foreach($arr as $item) {
if ($item['ID'] === $id) return $item['en'];
}
return null;
}
echo FindByID($arr, 11);
我想你希望当你传递任何值时,它会检查该值存在于多维数组的 id
索引处,并给出它的 key
和 en
索引值。
<?php
$array = Array (
'0' => Array ('ID' => 10, 'en' => 'Value1' ),
'1' => Array ('ID' => 11, 'en' => 'Value2' ),
'2' => Array ('ID' => 12, 'en' => 'Value3' )
);
function findKeyandValue($array,$value){
foreach($array as $key=>$val){
if($val['ID']== $value){
echo 'key of the value pass='.$key.'and its en value is'.$val['en'].'<br>';
}
}
}
findKeyandValue($array,10);
?>