Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to get future date in Faker

Tags:

php

faker

How do I get future dates with:

https://github.com/fzaninotto/Faker#fakerproviderdatetime

dateTime($max = 'now')  

i.e. what should the $max value be for datetime in the future

like image 252
Angad Dubey Avatar asked Jun 26 '15 15:06

Angad Dubey


3 Answers

You can pass strtotime string conditions to $faker->dateTimeBetween().

//ranging from today ending in 2 years $faker->dateTimeBetween('+0 days', '+2 years')  //ranging from next week ending in 1 month $faker->dateTimeBetween('+1 week', '+1 month')  //ranging from next sunday to next wednesday (if today is wednesday) $faker->dateTimeBetween('next sunday', 'next wednesday') 

see http://php.net/manual/en/function.strtotime.php for a full list of string usages and combinations.

like image 137
mshaps Avatar answered Oct 12 '22 02:10

mshaps


Try passing a unix timestamp for $max:

$unixTimestamp = '1461067200'; // = 2016-04-19T12:00:00+00:00 in ISO 8601  echo $faker->dateTime($unixTimestamp);  echo $faker->date('Y-m-d', $unixTimestamp);  // for all rows  $faker->dateTimeBetween('now', $unixTimestamp); 

Or pass a strtotime timestring to $faker->dateTimeBetween():

// between now and +30y $faker->dateTimeBetween('now', '+30 years'); 
like image 21
Jens A. Koch Avatar answered Oct 12 '22 02:10

Jens A. Koch


To get date for a tomorrow. We can use this.

$faker->dateTimeBetween('now', '+01 days');

Or for future date, we can use php strtotime function as @mshaps already mentioned.

like image 23
Pyae Sone Avatar answered Oct 12 '22 01:10

Pyae Sone