Php 从多维阵列获取数据的正确方法
您好,以下是我的阵列数据: 我正试图得到图片的突出部分 这是一个关联数组,到目前为止,我已经尝试过:Php 从多维阵列获取数据的正确方法,php,arrays,associative-array,Php,Arrays,Associative Array,您好,以下是我的阵列数据: 我正试图得到图片的突出部分 这是一个关联数组,到目前为止,我已经尝试过: <?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;?&
<?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
....
但给出错误“Undefined offset: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'];
}
在将数据添加到$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'];
}
上面写着未定义的索引:atr_n@Umerm将其更改为a_name将atr_n和atr_v分别更改为a_name和a_val。@Amal Murali,是的,更正了,我已经看到问题的亮起部分,所以我使用了它们。感谢通知。
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'];
}