PHP8中查询数组中指定元素-PHP8知识详解

导读:我们用到了下列方法来查询数组中指定的元素:使用array_search()函数、使用array_column()函数、使用in_array()函数、使用array_key_exists()函数、使用isset()函数等。

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()函数来查询数组中指定元素就讲解完毕了。

space

本文地址:https://www.566155.com/51.html

猜你喜欢

PHP8的继承和多态-PHP8知识详解

导读:我们在前面的时候讲过《面向对象编程的特点》时,面向对象编程具有3大特点:封装性、继承性和多态性。 集成和多态的根本作用就是完成代码的重用。下面就来讲解PHP8的继承和多态。

2023-09-27  分类:PHP  浏览:584次


PHP8中伪变量“$this->”和操作符“::”的使用-PHP8知识详解

导读:对象不仅可以调用自己的变量和方法,也可以调用类中的变量和方法。php8通过伪变量“$this->”和操作符“::”来实现这些功能。

2023-09-27  分类:PHP  浏览:378次


PHP8中的构造方法和析构方法-PHP8知识详解

导读:今日分享的内容是PHP8中的构造方法和析构方法,我们把构造方法和析构方法这两个方法分开来讲:

2023-09-27  分类:PHP  浏览:262次


PHP8的类与对象的基本操作之类常量-PHP8知识详解

导读:PHP 8引入了一种新的特性,称为类常量(Class Constants)。类常量是在类中定义的常量,类似于全局常量,但作用域仅限于定义它们的类。 在PHP 8中,类常量的作用域被限制在定义它们的类中。这意味着只有类的成员方法或静态方法才能访问类常量。在其他上下文中,如类的实例方法或全局范围内,类常量将不可见。

2023-09-27  分类:PHP  浏览:278次


PHP8的类与对象的基本操作之成员变量-PHP8知识详解

导读:成员变量是指在类中定义的变量。在类中可以声明多个变量,所以对象中可以存在多个成员变量,每个变量将存储不同的对象属性信息。

2023-09-27  分类:PHP  浏览:249次


PHP8的类与对象的基本操作之类的实例化-PHP8知识详解

导读:定义完类和方法后,并不是真正创建一个对象。类和对象可以描述为如下关系。类用来描述具有相同数据结构和特征的“一组对象”,“类”是“对象”的抽象,而“对象”是“类”的具体实例,即一个类中的对象具有相同的“型”,但其中每个对象却具有各不相同的“值”。

2023-09-27  分类:PHP  浏览:263次


PHP8的类与对象的基本操作之成员方法-PHP8知识详解

导读:成员方法是指在类中声明的函数。在类中可以声明多个函数,所以对象中可以存在多个成员方法。类的成员方法可以通过关键字进行修饰,从而控制成员方法的商用权限。

2023-09-27  分类:PHP  浏览:274次


PHP8的类与对象的基本操作之定义类-PHP8知识详解

导读:在PHP8中,定义类的关键字是class,定义类的语法格式如下: 其中,修饰符是可选项,常见的修饰符包括public、private和protected。

2023-09-27  分类:PHP  浏览:273次


认识面向对象-PHP8知识详解

导读:面向对象编程,也叫面向对象程序设计,是在面向过程程序设计的基础上发展而来的,它比面向过程编程具有更强的灵活性和扩展性。 它用类、对象、关系、属性等一系列东西来提高编程的效率,其主要的特性是可封装性、可继承性和多态性。

2023-09-27  分类:PHP  浏览:253次


PHP8中调换数组中的键值和元素值-PHP8知识详解

导读:在PHP8中使用array_flip()函数可以调换数组中的键值和元素值。

2023-09-27  分类:PHP  浏览:251次