Php 数组上未定义的偏移量-获取每个数组的键

Php 数组上未定义的偏移量-获取每个数组的键,php,arrays,Php,Arrays,这是我现有的代码: foreach($masterData as $data) { ?> <tr> <td><?=$data[0]?></td> //error line here </tr> <? echo '<pre>',print_r($data),'</pre>'; }?> 但是回显

这是我现有的代码:

foreach($masterData as $data) { ?>
        <tr>
            <td><?=$data[0]?></td> //error line here
        </tr>

        <?
        echo '<pre>',print_r($data),'</pre>';

      }?>
但是回显
$data[0]、[1]、[2]
。。请通知我:
注意:未定义的偏移量:0


此错误的可能原因?我的代码有问题吗?如何修复?

您正在访问一个未定义的偏移量,就像错误消息告诉您的那样

在$data中,您只有“payment”作为键,而不是0,并且在您的数据中有“name”、“email”等。
如果需要“payment”的值,则必须访问$data['payment']

尝试此操作以获取数组中所有索引的键:

echo $data['name'];  // or whatever element you want to retrieve from the payment-set

您需要使用键值访问数组。 那就试试吧


我认为您需要使用键值访问数组。那就试试吧


$payment\u name=isset($data['payment']['name'])$数据['payment']['name']:“”

使用
echo$data['payment']['name']
$data[0]
位置要回显什么?@Saty如何获取包含支付数组的数组(键或索引)?它应该是
$data['payment']['name']
@Barmar因为他使用的是foreach循环$data,所以已经保存了支付阵列,这就是我正在寻找的答案!谢谢你。@DharaParmar再次感谢你。任何人都可以更新我的问题。
<?php 
foreach($masterData as $key=>$data) { // you can get key of array in $key
?>

<tr>
       <td><?=$key?></td> <!-- you can get $key here -->
</tr>

<?php
echo '<pre>',print_r($data),'</pre>';
}
?>
echo $data['name'];  // or whatever element you want to retrieve from the payment-set