网站首页 > 基础教程 正文
php是使用最广泛的web编程语言,数组是一个数据集合,数组是一种非常常用的数据类型。在操作数组时,有时我们需要查询数组中是否有某个指定元素。在实际的程序开发中,我们用到了下列方法来查询数组中指定的元素:使用array_search()函数、使用array_column()函数、使用in_array()函数、使用array_key_exists()函数、使用isset()函数等。
1、使用array_search()函数查询数组中指定元素
使用array_search()函数查询数组中指定元素,如果存在则返回键名,否则返回false。语法格式如下:
array_search(要查找的值, 数组, 是否使用全等比较);
参考代码:
<?php
$s = "php";
$study = array("s1"=>"html", "s2"=>"css", "s3"=>"php", "s4"=>"mysql");
$key = array_search($s, $study);
if ($key !== false) {
echo "学习的课程已经找到,编号为:".$key;
} else {
echo "搜索完毕,没有找到需要的课程!";
}
?>
以上代码在PHP8中运行的结果为:
学习的课程已经找到,编号为:s3
这样,如果搜索成功,将打印课程的编号,否则将打印未找到的消息。
2、使用array_column()函数来查询数组中指定元素
在PHP 8中,你可以使用array_column()函数来查询数组中指定元素。该函数从二维数组中获取指定键的所有值,并返回一个新的一维数组。
以下是使用array_column()函数查询数组中指定元素的示例代码:
<?php
$students = [
['name' => '明明', 'age' => 20],
['name' => '红红', 'age' => 25],
['name' => '亮亮', 'age' => 30]
];
// 查询所有学生的名字
$names = array_column($students, 'name');
echo "<pre>";
print_r($names);
// 查询年龄大于25岁的学生的名字和年龄
$filteredStudents = array_filter($students, function ($student) {
return $student['age'] > 25;
});
// 提取年龄大于25岁学生的名字
$filteredNames = array_column($filteredStudents, 'name');
echo "<pre>";
print_r($filteredNames);
?>
以上代码在PHP8中的运行结果如下:
Array
(
[0] => 明明
[1] => 红红
[2] => 亮亮
)
Array
(
[0] => 亮亮
)
3、使用in_array()函数来查询数组中指定元素
PHP中提供了in_array()函数,其作用是在数组中搜索指定的值。如果找到了该值,则返回TRUE,否则返回FALSE。
in_array()函数的语法如下:
in_array(要查找的元素, 要查询的数组, 是否使用严格模式)
严格模式表示数据类型也要匹配,而非严格模式只匹配值。因此,在数组查询中,我们通常使用非严格模式。
例如,我们有一个数组$a,包含元素"html"、"css"、"php",现在我们要查询是否存在元素"php"。代码如下:
<?php
$a = array("html", "css", "php");
if (in_array("php", $a)) {
echo "存在";
} else {
echo "不存在";
}
?>
以上代码在PHP8中运行的结果为:
存在
4、使用array_key_exists()函数来查询数组中指定元素
如果我们只需要查询一个数组中是否存在指定的键名,而不关心其对应的元素值,可以使用PHP中提供的array_key_exists()函数。
array_key_exists()函数的语法如下:
array_key_exists(键名, 数组)
参考代码:
<?php
$c = array("1"=>"html", "2"=>"css", "3"=>"php");
if (array_key_exists("3", $c)) {
echo "存在";
} else {
echo "不存在";
}
?>
以上代码,在PHP8中的运行结果如下:
存在
5、使用isset()函数来查询数组中指定元素
此外,在PHP中还可以使用isset()函数来查询数组中是否存在指定元素。isset()函数判断变量是否已定义且非空。
isset()函数的语法如下:
isset(数组[索引])
其中,$array表示要查询的数组,$key表示要查找的元素。
例如,我们有一个数组$d,包含元素"php"、"mysql"、"html",现在我们要查询是否存在元素"php"。代码如下:
<?php
$d = array("php", "mysql", "html");
if (isset($d[0])) {
echo "存在";
} else {
echo "不存在";
}
?>
以上代码在PHP8中的运行结果如下:
存在
到这为止,使用array_search()函数、使用array_column()函数、使用in_array()函数、使用array_key_exists()函数、使用isset()函数来查询数组中指定元素就讲解完毕了。
- 上一篇: PHP二维数组排序(简单易懂版)
- 下一篇: PHP二维数组如何据条件提取成一维?
猜你喜欢
- 2025-01-12 8个必会的高效提取数字法,你知道几个?
- 2025-01-12 条件太太太太太多怎么求和?教你5招,轻松就搞定
- 2025-01-12 函数公式的左膀右臂:ROW、COLUMN函数知多少
- 2025-01-12 【excel】从现在开始掌握sortby函数,各类排序都不怕!
- 2025-01-12 Vlookup一次性查找多个值,4种方法,你更喜欢哪种?
- 2025-01-12 常用公式,效果挺好
- 2025-01-12 获取列号函数COLUMN的应用技巧
- 2025-01-12 INDEX函数怎么用?两种方法全在这儿
- 2025-01-12 快速查询,INDEX和MATCH函数必须会!
- 2025-01-12 EXCEL:别想得太复杂,动态的职工信息表,用INDEX函数就可搞定
- 01-128个必会的高效提取数字法,你知道几个?
- 01-12条件太太太太太多怎么求和?教你5招,轻松就搞定
- 01-12函数公式的左膀右臂:ROW、COLUMN函数知多少
- 01-12【excel】从现在开始掌握sortby函数,各类排序都不怕!
- 01-12Vlookup一次性查找多个值,4种方法,你更喜欢哪种?
- 01-12常用公式,效果挺好
- 01-12获取列号函数COLUMN的应用技巧
- 01-12INDEX函数怎么用?两种方法全在这儿
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)