PHP:从空值创建默认对象

PHP:从空值创建默认对象,php,laravel,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); 即使我声明了一个新对象,它也会向我显示错误: 从空值创建默认对象 我怎样才能解决这个问题呢?

我对此代码有问题:

$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);
即使我声明了一个新对象,它也会向我显示错误:

从空值创建默认对象


我怎样才能解决这个问题呢?

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


您期望的输出是什么?一个充满对象的数组。它被简化了,因此不仅x是一个属性。它在循环中定义它的简单的、可能的重复中工作得非常好。非常感谢。延迟后将标记为答案
<?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);