有什么方法可以搜索数组中的值并返回它的键,我尝试array_search()
但没有成功...下面是我的数组的一个例子
[0] => Array ( [value] => [text] => All Call Types ) [1] => Array ( [value] => enquiry [text] => Renovation Enquiry ) [2] => Array ( [value] => msg [text] => Message to Pass on ) ...
我的最终目标是转换
value
至text
。
这是我试过的:
$key = array_search($row['call_type'], $type_list);
$call_type_name = $type_list[$key]['text'];
谢谢!
答案 0 :(得分:3)
您可以编写一个提供此功能的简短函数:
function findInArray($array, $needle)
{
for ($i = 0; $i < sizeof($array); $i++)
{
if ($array[$i]['value'] == $needle) return $array[$i]['text'];
}
}
用法示例:
$call_type_name = findInArray($type_list, 'msg');
答案 1 :(得分:1)
这就是你所追求的?找到特定值出现的位置?
function findKeyByField( $arr, $name, $val ){
$pos = 0;
foreach ($arr as $subArr ):
foreach ($subArr as $key => $value):
if( $key == $name and $value == $val ){
return $pos;
}
endforeach;
$pos++;
endforeach;
}