Linux 拨号vps windows公众号手机端

PHP中怎么将array_search()用于对象数组

lewis 7年前 (2018-03-30) 阅读数 9 #程序编程
文章标签 PHP

在PHP中,可以使用array_search()函数来搜索一个值在数组中的位置。对于对象数组,我们可以通过自定义一个回调函数来指定搜索条件。

下面是一个示例,演示如何将array_search()用于对象数组:

class Person {
    public $name;
    public $age;
    
    public function __construct($name, $age) {
        $this->name = $name;
        $this->age = $age;
    }
}

$person1 = new Person('Alice', 25);
$person2 = new Person('Bob', 30);
$person3 = new Person('Charlie', 35);

$people = [$person1, $person2, $person3];

// 自定义回调函数,用于在对象数组中搜索特定的对象
function searchByName($person, $name) {
    return $person->name == $name;
}

// 在对象数组中搜索名字为 Bob 的对象
$index = array_search('Bob', array_column($people, 'name'));
if ($index !== false) {
    echo "Bob is found at index $index.";
} else {
    echo "Bob is not found in the array.";
}

在上面的示例中,我们首先定义了一个Person类来表示一个人的信息,然后创建了一个包含Person对象的数组$people。接着,我们定义了一个自定义的回调函数searchByName(),用于根据名字在对象数组中进行搜索。最后,我们使用array_search()函数和array_column()函数来搜索名字为"Bob"的对象,并返回其在数组中的索引位置。

通过这种方式,你可以轻松地使用array_search()函数在对象数组中搜索特定的对象。

版权声明

本文仅代表作者观点,不代表米安网络立场。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门