PHP: Как отфильтровать ассоциативный массив по ключам
Решение основано на комбинации PHP функций: array_intersect_key
- пересечение массивов с учетом ключей и array_flip
- зеркальное представление массива (ключи и значения взаимо заменяются).
$params = [
'id' => 123,
'username' => 'Admin',
'email' => 'some_user@gmail.com',
'password' => 's0mePa$$w0rd'
];
$allowedParams = ['username', 'email'];
$data = array_intersect_key($params, array_flip($allowedParams));
#array