PHP 转换时间格式并添加随机时间变量

标签 php random time formatting

我需要生成一个时间格式:[ Y-m-d H:i:s ] 从看起来像 7/03/2013 的字符串(是的,可以是 7或 07 ) 。

我用

$date = '7/03/2013';
$date = date('Y-m-d H:i:s', strtotime($date));

这很好用。 那么问题出在哪里呢?

问题是我没有 H:i:s 部分,但我需要它才能插入数据库。

所以我只是试着随机它:

$rand = rand(00,24); 
$datenew = date('Y-m-d '.$rand.':i:s', strtotime($date));

但这会产生像 46 这样的时间,我需要 0406 所以:

$rand = rand(0,2) . rand(1,4) ;
$datenew = date('Y-m-d '.$rand.':'.$rand.':s', strtotime($date));

但在我看来,这显然不够优雅。

我还需要 session 记录,所以我需要以某种方式格式化 rand(00,60) ;

但结合起来也可能会产生不切实际的时间,例如 24:26:00

那么我如何利用格式 7/03/2013 转换为 H:i:s 并添加随机小时、分钟(也许秒)

最佳答案

$dt = DateTime::createFromFormat('n/d/Y', '7/03/2013');
echo $dt->format('Y-m-d H:i:s');

See it in action

时间会根据您运行代码的时间而有所不同。

关于PHP 转换时间格式并添加随机时间变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15683739/

相关文章:

c - 为什么我有段错误?

java - 查找字典中最长单词的代码的时间复杂度

php - WooCommerce 成功订单 Hook

php - MySql 和 PHP 用户通知系统的建议

javascript - 如何将数组对象php显示到ajax js?

php - 在 while 循环 PHP 中将变量与前一个变量进行比较

java - C 与 Java 中的随机数生成

c++ - 来自大量人口的随机样本陷入无限循环

windows - 在 Go 中将窗口刻度转换为 UNIX 时间戳

jquery - 将分钟添加到输入字段并显示小时/分钟