@serikd

Есть такая функция в PHP?

Есть ли стандартная функция, которая извлекает из заданного массива только нужные значение по ключам?

private static function extractOnly(array $parsed, array $params)
    {
        $result = [];
        foreach ($params as $key) {
            if (array_key_exists($key, $parsed)) {
                $result[$key] = $parsed[$key];
                continue;
            }

            throw new \ErrorException('Key "' . $key . '" do not exists in array');
        }

        return $result;
    }
  • Вопрос задан
  • 219 просмотров
Решения вопроса 1
miraage
@miraage
Старый прогер
array_intersect_key($parsed, array_flip($params));
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
<?php
  $list = array("hello", "privet");
  $arr = array("hello" => "Vasya", "privet" => "Petya", "zdorovo" => "Misha");
  $arr = array_filter($arr, function($key) use ($list) { return in_array($key, $list); } , ARRAY_FILTER_USE_KEY);
  print_r($arr);
?>
Ответ написан
Комментировать
@shagguboy
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы