在两个日期之间获取随机日期

16
有没有办法在Carbon中获取两个日期之间的随机日期?例如,我想要获取现在和55分钟前之间的随机日期。
$dateNow = Carbon::now();
$date25MinsAgo = Carbon::now()->subMinutes(55);

然而,我卡在这一点上了。我找到了一些关于PHP的信息,但我想使用“now”作为种子。我该怎么办?


2
已经在这里回答了:https://dev59.com/wnI-5IYBdhLWcg3wMFW0#1972717 - KuKeC
1
可能是一个重复问题,参考如何使用PHP生成两个日期之间的随机日期? - Raunak Gupta
@KuKeC 使用 date() 而不是 carbon。 - francisco
3个回答

40

使用rand()函数:

 $random = Carbon::now()->subMinutes(rand(1, 55));

11

获取过去一年中的随机日期:

$random = Carbon::today()->subDays(rand(0, 365));

不错,我正在使用 $random = Carbon::today()->addDays(rand(1, 365)); - Luis Fernando Richter

3

使用random_int()函数:

 use Carbon\Carbon;

 $upTo55MinsAgo = Carbon::now()->subMinutes(random_int(0, 55));

(PHP 7,PHP 8)random_int-生成密码学安全的伪随机整数
您也可以使用rand(),但我认为使用密码学安全函数是一种良好的实践。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接