Получить текущий ключ массива в многомерном массиве - PullRequest
0 голосов
/ 24 мая 2010

У меня есть массив сеансов $ _ SESSION ['cart'] с некоторыми элементами в нем. Структура выглядит следующим образом (через print_r ):

    Array (
      [2-1] => Array (
         [color] => 7
         [articlenumber] => WRG70 10
         [quantity] => 1
         [price] => 17.50
      )

      [3-8] => Array (
         [color] => 2
         [articlenumber] => QRG50 02
         [quantity] => 1
         [price] => 13.50
      )
   )

Цикл по значениям для отображения в порядке ...

foreach($_SESSION['cart'] as $item_array)
{ 
   foreach($item_array as $item => $value)
   {   
      echo $value . ' | ';
   }
}

... так как в результате получается что-то вроде этого:

7 | WRG70 10 | 1 | 17.50 |
2 | QRG50 02 | 1 | 13.50 |

Но сейчас: Как я могу также вывести соответствующий ключ (например, «2-1»)? Я попробовал некоторые функции массива, такие как key () & current , но не смог заставить его работать (на днях).

Какой-нибудь быстрый намек на это?

Большое спасибо и лучшее из Берлина

Fabian

Ответы [ 2 ]

3 голосов
/ 24 мая 2010

foreach ($array as $key => $value) {...}

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

0 голосов
/ 24 мая 2010

Попробуйте это:

foreach($_SESSION['cart'] as $key => $item_array)
{ 
   foreach($item_array as $item => $value)
   {   
      echo 'Key = ' . $key . ' Value = ' . $value . ' | ';
   }
}
...