Php 带键的数组推送返回错误

Php 带键的数组推送返回错误,php,arrays,mysqli,Php,Arrays,Mysqli,我正在尝试从mysqli查询构建一些子对象。我想创建一个包含多个数组的数组。但是我犯了一些错误 Error: [12-Mar-2015 02:56:23 America/New_York] PHP Warning: array_push() expects parameter 1 to be array, null given in /home/bud/public_html/cp/function/receivable.php on line 18 这是我的密码: <?php req

我正在尝试从mysqli查询构建一些子对象。我想创建一个包含多个数组的数组。但是我犯了一些错误

Error: [12-Mar-2015 02:56:23 America/New_York] PHP Warning:  array_push() expects parameter 1 to be array, null given in /home/bud/public_html/cp/function/receivable.php on line 18
这是我的密码:

<?php
require_once('../configuration.php');
$con=new mysqli($hostname,$dbusername,$dbpass,$dbname);
if (mysqli_connect_errno($con)) {
    die('The connection to the database could not be established.');
}
if(isset($_POST['date'])){
  $date=$_POST['date'];
  $receivable= array();
  if($date==="All"){
  $q1="SELECT * FROM orders WHERE order_status='completed' AND due > '0.00' ORDER BY id DESC";
  }else{
  $q1="SELECT * FROM orders WHERE DATE(time) = '$date' AND order_status='completed' AND due > '0.00' ORDER BY id DESC";
  }
  $result=$con->query($q1);
  while($row=$result->fetch_array()){
  //$receivable['orders'][]=array($row);
  array_push($receivable['orders'][], array('id' => $row['id'], 'due' => $row['due'] ));
}
  echo json_encode($receivable);


}  
?>

如何将带有键的数组插入到
$received['orders'][]中
我想创建更多的数组,比如
$received['client'][]

并希望将带有键的变量推入$Received['orders'][]中,如id=>、due=>、paid=>、

必须这样做…参数1必须是数组

// define array
$receivable['orders'] = array();

array_push($receivable['orders'], array('id' => $row['id'], 'due' => $row['due'] ));

在多维数组中,条目是另一个数组,请将该值的索引指定给array\u push:

数组_push($received['orders'],数组('id'=>$row['id'],'due'=> $row['due'])


您可以在代码中进行一些简单的更改,这样就可以了

$receivable['orders'][]= array('id' => $row['id'], 'due' => $row['due'] );

这将为您提供数字数组作为array_push()

我试过你的几行,但仍然返回
PHP警告:array_push()希望参数1是array,在第21行的/home/businesscraftsbd/public_html/cp/function/received.PHP中给出null