PHP:从空值创建默认对象

时间:2017-05-02 18:22:16

标签: php laravel

我遇到此代码的问题:

$days = array();
$d = new StdClass;
for($i = 0; $i < 7; $i++){
    $day = date("Y-m-d", strtotime("-".$i." day"));
    $d->x = $day; //error
    $days[] = $d;
    unset($d);
}
dd($days);

即使我已经宣布了一个新对象,它也会向我显示错误:

  

从空值创建默认对象。

我怎么可能解决这个问题?

1 个答案:

答案 0 :(得分:1)

试试这个,希望这会帮助你。您应该在循环中定义$d = new StdClass;。用于每次启动新对象。

Try this code snippet here

<?php

ini_set('display_errors', 1);
$days = array();
for ($i = 0; $i < 7; $i++)
{
    $d = new StdClass;
    $day = date("Y-m-d", strtotime("-" . $i . " day"));
    $d->x = $day; //error
    $days[] = $d;
    unset($d);
}
print_r($days);