是否可以将array_push转换为多维数组?
使用以下方法创建数组:
$ObjectArray = array();
$ShiftArray = array($ObjectArray);
$WeekShiftArray = array($ShiftArray);
$MasterShiftArray = array($WeekShiftArray);
尝试使用
推送到阵列array_push($MasterShiftArray[$last_monday_from_date][$CurrentShift->Offset][$CurrentShift->Shift], $CurrentShift);
但我得到了:
警告:array_push()要求参数1为数组,对象在第94行的/opt/lampp/htdocs/sandboxj/blog/wp-content/plugins/Shifty/AddShift.php中给出
任何帮助都将不胜感激。
答案 0 :(得分:0)
顾名思义,$ ObjectArray可能是一个对象数组,而不是一个数组数组。所以你试图将值推入一个对象。
<击> 修改强>
我假设你没有在这里显示$ ObjectArray的实际内容BTW。这是对的吗?
编辑2
嗯,我现在已经对它进行了测试,即使$ objectArray保存了对象,你正在处理的示例也能正常工作。所以这里可能还有其他东西,我们没有看到。
您确定$ ObjectArray在处理它时是一个数组吗?
编辑3
在array_push调用之前执行var_dump($ ObjectArray)时会得到什么?
答案 1 :(得分:0)
你可以做到
$MasterShiftArray[$last_monday_from_date][$CurrentShift->Offset][$CurrentShift->Shift][] = $CurrentShift;