Привет, это мой массив данных:
Я пытаюсь получить выделенную часть изображения.
Это ассоциативный массив, поэтому я пробовал это:
<?php
for($i = 0 ; $i < count($ad['all_atr']) ; $i++)
{
$atr_n= $ad[$i]['all_atr']['atr_n'];
$atr_v= $ad[$i]['all_atr']['atr_v'];
?>
<tr>
<td><?php echo $atr_n;?></td>
<td><?php echo $atr_v;?></td>
</tr>
<?php
....
но выдает ошибку ‘Неопределенное смещение: 0’
Чтобы получить к нему доступ, сначала укажите массив, затем индекс:
for($i = 0; $i < count($ad['all_atr']); $i++)
{
$atr_n = $ad['all_atr'][$i]['a_name'];
$atr_v = $ad['all_atr'][$i]['a_val'];
}
Или с использованием foreach:
foreach($ad['all_atr'] as $values) {
$atr_n = $values['a_name'];
$atr_v = $values['a_val'];
}
Просто убедитесь, что данные установлены и не пусты, прежде чем добавлять их в $ atr_n & $ atr_v:
if (isset($ad['all_atr'][$i]['a_name']) && isset($ad['all_atr'][$i]['a_val']) && !empty($ad['all_atr'][$i]['a_name']) && !empty($ad['all_atr'][$i]['a_val'])) {
$atr_n = $ad['all_atr'][$i]['a_name'];
$atr_v = $ad['all_atr'][$i]['a_val'];
}