Php数组数组从名称获取id

时间:2016-05-09 03:50:55

标签: php arrays

我在PHP中有如下数组:

$my_array = array();
$my_array[] = array("id"=>"myid1", "name"=>"myname1");
$my_array[] = array("id"=>"otherid", "name"=>"othername");
$my_array[] = array("id"=>"morestuffid", "name"=>"morestuffname");

拥有"名称"喜欢"其他名称",是否可以检索相应的" id"来自$ my_array而没有for循环?

2 个答案:

答案 0 :(得分:4)

您可以通过name方法获取数组列array_column。然后找到您想要的array_search字符串,它将返回数组的索引。

$index = array_search("othername",array_column($my_array,"name"));
var_dump($my_array[$index]["id"]);

答案 1 :(得分:0)

请使用

$id = array_filter( 
        array_map(
            function($array) {
                if($array['name']== 'othername'){
                    return $array['id']; 
                }
            },$my_array
        )
    ); 
print "<pre>";print_r($id);