foreach Warning: Undefined array key
<?
$data[]['open'] = 1;
$data[]['close'] = 2;
$data[]['high'] = 3;
$data[]['low'] = 4;
$data[]['open'] = 5;
$data[]['close'] = 6;
$data[]['high'] = 7;
$data[]['low'] = 8;
foreach($data as $key => $value)
{
echo $value['open'];
}
?>
Результат работы:
1
Мая
Warning: Undefined array key "open" in … on line 14
Но если написать …
foreach($data as $key => $value)
{
print_r($value);
echo "<hr />";
}
…
то выдает
Array ( [open] => 1 )
Array ( [close] => 2 )
Array ( [high] => 3 )
Array ( [low] => 4 )
Array ( [open] => 5 )
Array ( [close] => 6 )
Array ( [high] => 7 )
Array ( [low] => 8 )
Откуда в первом случае предупреждение и как его убрать, ну кроме директив к php
Ответы (1 шт):
Автор решения: Elton
→ Ссылка
<?
$data = []; // Инициализация массива
// Корректное добавление подмассивов с ключами
$data[] = ['open' => 1, 'close' => 2,
'high' => 3, 'low' => 4];
$data[] = ['open' => 5, 'close' => 6,
'high' => 7, 'low' => 8];
// Цикл для вывода значений 'open'
foreach ($data as $key => $value) {
echo $value['open'] . "<br>";
// Теперь ошибок не будет
}
?>