Функция pluck($arr, $propName)
Описание: Данная функция предназначена для извлечения значения определенного свойства из каждого элемента массива или объекта.
Параметры:
$arr(обязательный): Массив или объект, из которого нужно извлечь значения свойства.$propName(обязательный): Имя свойства, значение которого нужно извлечь. Для массивов это может быть строкой-ключом, для объектов — именем свойства.
Возвращаемое значение: Функция возвращает новый массив, содержащий значения свойства $propName для каждого элемента входного массива или объекта. Порядок элементов в новом массиве соответствует порядку элементов во входном массиве.
Пример использования:
$users = [
['name' => 'John', 'age' => 25],
['name' => 'Alice', 'age' => 30],
['name' => 'Bob', 'age' => 35],
];
// Извлечение значения свойства 'name' из каждого элемента массива
$result = pluck($users, 'name');
print_r($result);
/*
Результат:
Array
(
[0] => John
[1] => Alice
[2] => Bob
)
*/
$person = new stdClass();
$person->name = 'Jane';
$person->age = 28;
// Извлечение значения свойства 'age' из объекта
$result = pluck($person, 'age');
print_r($result);
/*
Результат:
Array
(
[0] => 28
)
*/
Примечания:
- Если элемент массива не содержит указанное свойство, то для этого элемента будет создано соответствующее значение
null. - Если передан объект, то должны быть определены публичные свойства или свойства с методами доступа (геттерами) для извлечения значений.
- Функция
pluck()использует внутреннюю функциюarray_map(), которая применяет анонимную функцию к каждому элементу массива.
<?php
function pluck($arr, $propName) {
return array_map(function($item) use ($propName) {
return is_array($item) ? $item[$propName] : $item->$propName;
}, $arr);
}
Проверенный хостинг
Beget
Международный хостинг-провайдер, аккредитованный национальный и международный регистратор доменных имён.
Timeweb
Сервис, предоставляющий широкий спектр услуг в области веб-хостинга и виртуальных серверов.