Сегодня я хочу показать вам простой, но очень полезный приём для работы с массивами в PHP — использование функции array_column().



Очень часто бывает задача: из многомерного массива "вытащить" только один столбец данных. Например, у вас есть массив пользователей:

$users = [
['id' => 1, 'name' => 'Иван', 'email' => 'ivan@example.com'],
['id' => 2, 'name' => 'Ольга', 'email' => 'olga@example.com'],
['id' => 3, 'name' => 'Павел', 'email' => 'pavel@example.com'],
];


И нужно получить только список всех email'ов. Многие делают это через foreach, но есть более элегантное решение:

$emails = array_column($users, 'email');
Результат будет таким:

[
'ivan@example.com',
'olga@example.com',
'pavel@example.com'
]

А ещё array_column() позволяет указать третий параметр — ключ массива. Например, сделать email по id:

$emailsById = array_column($users, 'email', 'id');

И тогда получится:

[
1 => 'ivan@example.com',
2 => 'olga@example.com',
3 => 'pavel@example.com'
]

Это удобный способ быстрого преобразования данных без лишнего кода.

👉 @php_lib
Просмотры: 697
Открыть в MAX Сообщить о неточности

Репосты публикации

Публикация канала

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти