溫馨提示×

PHP中怎么將array_search()用于對象數(shù)組

PHP
小億
86
2024-04-02 20:27:58
欄目: 編程語言

在PHP中,可以使用array_search()函數(shù)來搜索一個值在數(shù)組中的位置。對于對象數(shù)組,我們可以通過自定義一個回調(diào)函數(shù)來指定搜索條件。

下面是一個示例,演示如何將array_search()用于對象數(shù)組:

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];

// 自定義回調(diào)函數(shù),用于在對象數(shù)組中搜索特定的對象
function searchByName($person, $name) {
    return $person->name == $name;
}

// 在對象數(shù)組中搜索名字為 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類來表示一個人的信息,然后創(chuàng)建了一個包含Person對象的數(shù)組$people。接著,我們定義了一個自定義的回調(diào)函數(shù)searchByName(),用于根據(jù)名字在對象數(shù)組中進(jìn)行搜索。最后,我們使用array_search()函數(shù)和array_column()函數(shù)來搜索名字為"Bob"的對象,并返回其在數(shù)組中的索引位置。

通過這種方式,你可以輕松地使用array_search()函數(shù)在對象數(shù)組中搜索特定的對象。

0