简体   繁体   English

Laravel PHP的date_add函数不起作用

[英]Laravel php's date_add function don't work

Made this Laravel seeder function. 做了这个Laravel播种机功能。 Problem is the dates dosen't change as expected. 问题是日期没有按预期更改。 If I run the code in Tinker it works. 如果我在Tinker中运行代码,它将可以正常工作。

What am I doing wrong? 我究竟做错了什么?

public function run() {
    $faker = Faker::create();

    foreach(range(1, 10) as $index)
    {
        $myDateCalled = $faker->dateTime($max = 'now');

        $myDateAllocated = $myDateCalled;
        $i = $faker->numberBetween($min = 5, $max = 300);
        date_add($myDateAllocated, date_interval_create_from_date_string("{$i} seconds"));

        $myDatePickedUp = $myDateAllocated;
        $i = $faker->numberBetween($min = 5, $max = 30);
        date_add($myDatePickedUp, date_interval_create_from_date_string("{$i} minutes"));

        $myDateDelivered = $myDatePickedUp;
        $i = $faker->numberBetween($min = 10, $max = 90);
        date_add($myDateDelivered, date_interval_create_from_date_string("{$i} minutes"));


        dd($myDateCalled, $myDateAllocated, $myDatePickedUp, $myDateDelivered);

        Hhtransport::create([
            'Called' => $myDateCalled,
            'Allocated' => $myDateAllocated,
            'PickedUp' => $myDatePickedUp,
            'Delivered' => $myDateDelivered,
            'From' => $faker->numberBetween($min = 1, $max = 99),
            'To' => $faker->numberBetween($min = 1, $max = 99),
            'Put' => $faker->numberBetween($min = 1, $max = 99),
            'Drev' => $faker->numberBetween($min = 1, $max = 99),
            'Container' => $faker->numberBetween($min = 1, $max = 99)
        ]);
    }
}

dateTime is an object and hence passed by reference. dateTime是一个对象,因此通过引用传递。 Meaning I am only creating one dateTime object with 4 different names. 意思是我只创建一个具有4个不同名称的dateTime对象。

Using $myDateAllocated = clone $myDateCalled; 使用$ myDateAllocated =克隆$ myDateCalled; solved my problem. 解决了我的问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM