2016-10-04 2 views
-2

Я пишу код для перебора данных из многомерного массива. Во время цикла я запутался, получая детали из массива. Я попробовал несколько способов получить, но напрасно.многомерный массив с использованием foreach

Теперь я хочу получить значения из ключа , предоставленного в массиве.

Array 
(
    [match1] => Array 
    (
      [4] => Array 
       (
        [0] => Array 
         (
          [0] => Sanjay 
          [1] => Delhi 
          [2] => 23 
         ) 
        [1] => Array 
         (
          [0] => Ram 
          [1] => Mumbai 
          [2] => 26 
         ) 
       ) 

      [5] => Array 
       (
        [0] => Array 
         (
          [0] => Sanjay 
          [1] => Delhi 
          [2] => 23 
         ) 
        [1] => Array 
         (
          [0] => Ram 
          [1] => Mumbai 
          [2] => 26 
         ) 
       ) 
    ) 
) 

Благодаря

+0

С вашего вопроса, Я считаю, вам просто нужно '$ arr [" match1 "] [4]', правильно? –

+1

Добавляя к Правею Кумару, возможно, вы хотите '$ arr [" match1 "] [4] [0]' или '$ arr [" match1 "] [4] [1]' –

ответ

0

Это действительно очень просто. Предположим, что имя вашего основного массива - $mainarray. Итак, вот как вы можете получить массив ключ 4.

$key4array=$mainarray['match1'][4]; 
foreach($key4array as $arrayele) { 
    echo $arrayele[0]." ".$arrayele[1]." ".$arrayele[2]."<br>"; 
} 

выход будет,

Sanjay Delhi 23 
Ram Mumbai 26 

Доступ первый массив уровня по match1 ключа, а затем 4 как индекс, чтобы получить второй массив уровня.

1

Для доступа к многомерному массиву вам необходимо получить доступ через foreach() или напрямую с помощью ключей, которые у вас есть в функции print_r().

Следовательно, согласно вашему примеру вы можете получить прямой доступ к переменной, которую вы должны с помощью первой переменной массива в

  • вместе с ключом, что первый массив.

Рассмотрите этот массив, и вам нужно получить первое значение, которое вы можете обработать следующим образом.

print_r($var); в результате этого

Array 
(
    [match1] => Array 
    (
      [4] => Array 
       (
        [0] => Array 
         (
          [0] => Sanjay 
          [1] => Delhi 
          [2] => 23 
         ) 
        [1] => Array 
         (
          [0] => Ram 
          [1] => Mumbai 
          [2] => 26 
         ) 
       ) 

    ) 
) 

Вы можете получить переменную в двух методов следующим

один метод:

В качестве переменной, содержащей массив является $var, следовательно, вам нужно для доступа к этому.

Чтобы получить значение, которое имеет ключ, вы можете иметь $var['match1'][4], и вы можете применить foreach к переменной и получить значение, которое у нее есть.

foreach($var['match1'][4] as $inner_value) 
{ 
// Do what ever stuff you need 
} 

Способ второй:

  • Получение ключа 0 - 0 в массиве, что это можно закодировать, как - $var['match1'][4][0]
  • Получение ключа 1 - 1 в массив, который у вас есть, можно указать как - $var['match1'][4][1]

Вы можете получить столько значение внутри массива, как вы можете с помощью двух вышеуказанных пунктов

Выход для обоих это будет такой же, как следует

Sanjay Delhi 23 
Ram Mumbai 26