PHP数组问题 - 未定义的偏移量

时间:2017-04-04 02:58:10

标签: php arrays cakephp

我有一个如下定义的数组:

<?php $Invoices = array();
foreach ($bookings as $booking){
    $Invoices[$booking['id'] = $booking['invoice_no']];
}
?>

但是,我得到了Notice (8): Undefined offset error

目前,所有$booking['id']都与$booking['invoice_no']相同 - 这将改变;它们现在只是测试值(否则我会坚持使用$bookings)。

我计划在表单输入中使用数组作为选项:

<div class="col-sm-12">
    <?= $this->Form->input('booking_id', ['class' => 'form-control',
    'label' => 'Invoice Number', 'id' => 'booking_id', 'options' => 
    $Invoices]); ?>
</div>

检查我的CakePHP 3调试器,$bookings肯定有包含元素的子数组 - 例如,$bookings[0]['id'] = $bookings[0]['invoice_no'] = 10.

1 个答案:

答案 0 :(得分:3)

这里的语法错误:$Invoices[$booking['id'] = $booking['invoice_no']];

应该是:

$Invoices[$booking['id']] = $booking['invoice_no'];