Получить значение массива PHP без имени ключа

Мне нужно получить значение из массива следующим образом:

array (size=1)
'row_3' => 
  array (size=1)
  'viagem' => 
    array (size=10)
      'veiculo_id' => string '1' (length=1)
      'motorista_id' => string '1' (length=1)
      'data' => string '2019-06-05' (length=10)
      'destino' => string 'A' (length=1)
      'vrUnit' => string '' (length=0)
      'horaSaida' => string '00:00:00' (length=8)
      'horaChegada' => string '00:00:00' (length=8)
      'kmInicial' => string '' (length=0)
      'kmFinal' => string '' (length=0)
      'autorizado' => string 'A' (length=1)

Если я использую $var = $_POST['data']['row_3']['viagem']['destino']; эту работу.

Но ключ ['row_3'] не фиксируется, ключ может быть ['row_5'], ['row_10'] и т.д.

Итак, мой вопрос в том, как я могу получить значение, используя такой код, как $var = $_POST['data']??something??['viagem']['destino'];?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
0
664
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Здесь может подойти array_column или несколько уровней array_shift, скорее всего там или четыре array_shift:

array_shift(array_shift(array_shift($_POST)))['destino'];

здесь результат пустой

Italo Rodrigo 16.06.2019 04:45

Я стараюсь $_POST и $_POST['data']

Italo Rodrigo 16.06.2019 04:45
Ответ принят как подходящий

Пытаться:

$var = $_POST['data'][array_keys($_POST['data'])[0]]['viagem']['destino'];
$var = $_POST['data'][array_keys($_POST['data'])[0]]['viagem']['des‌​tino']; работает. Спасибо
Italo Rodrigo 16.06.2019 04:59

Вам просто нужно получить доступ к известным ключам на выбранную вами глубину, а затем получить динамический ключ с помощью key()

Код: (Демо)

$_POST = [
    'data' => [
        'row_3' => [
            'viagem' => [
                'veiculo_id' => '1',
                'motorista_id' => '1',
                'data' => '2019-06-05',
                'destino' => 'A',
                'vrUnit' => '',
                'horaSaida' => '00:00:00',
            ]
        ]
    ]
];

echo $_POST['data']['row_3']['viagem']['destino'];
echo "\n---\n";
$rowKey = key($_POST['data']);  // no need to generate an entire temporary array of keys
echo $_POST['data'][$rowKey]['viagem']['destino'];

Выход:

A
---
A

Другие вопросы по теме