PHP查找二维数组的内容
文章描述:
PHP查找二维数组的内容,主要用到了array_column()和array_search()函数,先介绍一下这两个函数的用法
1、array_column(array, column_key, index_key)
// 表示由数据库返回的可能记录集的数组
$a = array(
    array(
        'id' => 5698,
        'first_name' => 'Bill',
        'last_name' => 'Gates',
    ),
    array(
        'id' => 4767,
        'first_name' => 'Steve',
        'last_name' => 'Jobs',
    ),
    array(
        'id' => 3809,
        'first_name' => 'Mark',
        'last_name' => 'Zuckerberg',
    )
);
$last_names = array_column($a, 'last_name');
print_r($last_names);结果:
Array ( [0] => Gates [1] => Jobs [2] => Zuckerberg )
这个时候也可以指定第三个参数,用作返回数组的索引/键的列
$last_names = array_column($a, 'last_name', 'id');
print_r($last_names);Array ( [5698] => Gates [4767] => Jobs [3809] => Zuckerberg )
2、array_search(value, array, strict)
在数组中搜索值并返回键名,strict代表严格模式,可选,要求查找的值与类型一致;如果在数组中知道指定的键值,则返回对应的键名,否则返回false
$a=array("a"=>"red","b"=>"green","c"=>"blue");
echo array_search("red",$a);结果:a
华丽的分割线
$arr = [
    ['name'=>'张三', 'email'=>'zhangsan@qq.com'],
    ['name'=>'李四', 'email'=>'lisi@qq.com'],
    ['name'=>'王五', 'email'=>'wangwu@qq.com']
];
// 定义要查找的是哪个键的值
$found_arr = array_column($arr, 'name');
// var_dump($found_arr)
// ['张三', '李四', '王五']
$found_key = array_search('王五', $found_arr);
// $found_key = 0; 返回键名
echo $found_key;$arr = [
    ['id'=>1, 'name'=>'张三'],
    ['id'=>3, 'name'=>'李四'],
    ['id'=>11, 'name'=>'王五']
];
// 定义要查找的是哪个键的值
$found_arr = array_column($arr, 'id');
 var_dump($found_arr);
// ['1', '3', '11']
$found_key = array_search(11, $found_arr);
// $found_key = 0; 返回键名
echo $found_key;
发布时间:2023/04/30 
                
            
发表评论