2017-08-21 1 views
0

Ich versuche herauszufinden, warum, wenn ich diese Seed-Datei ausführt, erstellt die 50 am richtigen Datum, aber es erstellt noch 4 mehr am selben Tag, die es nicht sollte. Es sollte 4 Monate vom ursprünglichen Anfangsdatum hinzufügen und dann anfangen, 5 Benutzer alle 4 Monate zu machen. Wer sieht was ich falsch mache?Erstellen von zusätzlichen Benutzern aus Carbon und Laravel

$startingDate = Carbon::parse('First Monday of January 2010'); 
    $hiringDays = new DatePeriod(
     $startingDate->addMonths(4), 
     CarbonInterval::months(4), 
     Carbon::now() 
    ); 

    $userCount = 1; 
    for ($userCount; $userCount < 50; $userCount++) { 
     factory(User::class)->create([ 
      'hired_at' => $startingDate, 
     ]); 
    } 

    foreach ($hiringDays as $day) 
    { 
     for ($x = 1; $x <= 5; $x++) { 
      factory(User::class)->create([ 
       'hired_at' => $day, 
      ]); 
      $this->userCount++; 
     } 
    } 

Antwort

0

Sie können versuchen, eine while-Schleife zu verwenden, anstatt DatePeriod

$hireDate = Carbon::parse('First Monday of January 2010'); 
$limit = $startingDate->copy()->addMonths(4); 

while($startingDate->lte(limit)){ 
    factory(User::class)->create([ 
     'hired_at' => $startingDate, 
    ]); 
    $this->userCount++; 
    $startingDate->addMonth(); 
} 
Verwandte Themen