php怎么判断值是否在二维数组中
时间 : 2023-02-16 12:52:01声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性
php判断值是否在二维数组中,可以使用array_search()或者in_array()函数,以下是使用array_search()函数的步骤:
1. 定义一个二维数组:
$students = array(
array("name"=>"John", "age"=>20, "score"=>90),
array("name"=>"Mike", "age"=>18, "score"=>80),
array("name"=>"Bob", "age"=>19, "score"=>70)
);
2. 调用array_search()函数:
// 例如要判断John是否在数组中
$name = "John";
$result = array_search($name,array_column($students,"name"));
3. 比较$result:
//若$result为真, 表示要查找的值存在
if($result !== FALSE) {
echo $name." exists!";
} else {
echo $name." does not exist!";
}
使用in_array()函数也可以实现同样的功能:
// 例如要判断John是否在数组中
$name = "John";
$result = in_array($name,array_column($students,"name"));
//若$result为真, 表示要查找的值存在
if($result) {
echo $name." exists!";
} else {
echo $name." does not exist!";
}
以上就是php判断值是否在二维数组中,使用array_search()或者in_array()函数实现的具体步骤。php有很多内置函数,可以更好地检查数组长度,搜索数组元素,判定数组中是否存在指定值等。这些函数的使用可以大大减少我们的代码量,提高开发的效率,是我们开发程序的重要工具。
随着php技术的发展,在进行数据编程的时候,会遇到判断值是否在二维数组中的场景。一维数组有in_array()方法可以用,二维数组则没有相应方法。可以采用多种方法来判断。
第一种方法是用php的array_search()函数,它可以让我们在多维数组中搜索特定元素,它还可以让我们返回一组值。如果不指定$array 中的元素值为什么的话,那么函数会对比$search 中的值,并返回对应的元素数组;如果指定了元素名称,那么函数会将数组中被指定元素$value 传回名称匹配的元素。如果搜索成功,array_search()函数返回搜索到的元素的键名,否则返回NULL,代码示例如下:
<?php
// 二维数据判断
$array = array(
'a' => array('id' => 1, 'name' => 'apple', 'age' => 20),
'b' => array('id' => 2, 'name' => 'boy', 'age' => 21),
'c' => array('id' => 3, 'name' => 'cat', 'age' => 22)
);
$result = array_search('cat', $array);
echo $result;
//如果搜索成功,将返回:c
?>
第二种方法是使用PHP的array_column()函数,它可以让我们在多维数组中提取指定字段的值,然后用in_array()函数来判断。可以利用array_column()函数提取想要的字段,然后再把新的一维数组传给in_array()函数,如果返回true,则表明值存在于多维数组中,反之则不存在。代码示例如下:
<?php
// 二维数据判断
$array = array(
'a' => array('id' => 1, 'name' => 'apple', 'age' => 20),
'b' => array('id' => 2, 'name' => 'boy', 'age' => 21),
'c' => array('id' => 3, 'name' => 'cat', 'age' => 22)
);
https/SSL证书广告优选IDC>>
推荐主题模板更多>>
推荐文章