TGViewer
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter @phpproglib · 10.5K subscribers
Post #6335 2.31K
🔧 Фишка PHP

array_walk_recursive + замыкание — обходим вложенные массивы без рекурсии вручную.

Часто видишь код, где разработчик пишет свою рекурсивную функцию для обхода многомерного массива. Но PHP уже давно умеет это из коробки.

$data = [
'name' => ' John ',
'address' => [
'city' => ' Berlin ',
'zip' => ' 10115 ',
],
];

array_walk_recursive($data, function (&$value) {
if (is_string($value)) {
$value = trim($value);
}
});

// Все строки на любом уровне вложенности — обрезаны


Почему это удобно:

— Не нужно писать свой рекурсивный обход
— Работает с любой глубиной вложенности
— Передача по ссылке (&$value) позволяет менять данные на месте

Где применяется на практике:

— Санитизация входящих данных из форм / API
— Нормализация конфигов
— Очистка данных перед валидацией

💡 Помни: array_walk_recursive пропускает ключи-массивы и заходит внутрь — то есть колбэк вызывается только для скалярных значений. Это поведение стоит учитывать, если тебе нужно обрабатывать и промежуточные узлы.

Библиотека пхпшника
  • 👍 6
  • ❤ 2
  • 🔥 1
More from @phpproglib
  1. Sep 23, 2026🚀 Свежий релиз Laravel 13 с набором улучшений и исправлений ✅ добавлена поддержка valkey:…
  2. Sep 21, 2026⚡️ PHP 8.6 выйдет 19 ноября 2026 года. Сейчас версия находится в beta. Самые заметные изме…
  3. Sep 20, 2026❓ Какие существуют проблемы в многопоточной среде? Основные проблемы многопоточности: 1️⃣…
  4. Sep 19, 2026🌞 В Symfony 8.2 появилось 29 новых Bundle — теперь компоненты вроде Mailer, Messenger и C…
  5. Sep 19, 2026А вы уже забрали свой подарок ко Дню программиста? К вашему профессиональному празднику Tp…
  6. Sep 18, 2026🐸 Библиотека пхпшника
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →