为了账号安全,请及时绑定邮箱和手机立即绑定

PHP:当时间格式化为 12:00a 时,strtotime 不起作用

PHP:当时间格式化为 12:00a 时,strtotime 不起作用

PHP
桃花长相依 2022-01-23 10:51:29
我正在尝试使用 PHP 的 strtotime() 函数将字符串转换为时间戳。当它被格式化为 12:00am 时,这可以正常工作,但是,如果它被格式化为 12:00a 或 12:00p,我会得到不一致的结果。最好的方法是什么?我想将 12:00a 转换为时间戳,而不是 12:00am,但有时可以将其格式化为 12:00am。
查看完整描述

1 回答

?
慕桂英546537

TA贡献1848条经验 获得超10个赞

一种可能的解决方案 - 添加m到时间字符串的末尾:


$str = '12:00a';

echo strtotime($str . ($str[-1] != 'm' ? 'm' : ''));

// or more strict check

echo strtotime($str . ($str[-1] == 'a' || $str[-1] == 'p' ? 'm' : ''));


查看完整回答
反对 回复 2022-01-23
  • 1 回答
  • 0 关注
  • 219 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信