【发布时间】:2023-04-04 15:43:01
【问题描述】:
我觉得这个问题很愚蠢 - 但我的时间格式有问题。使用 php 并从 MySQL 数据库中提取日期/时间我正在尝试格式化时间显示,因此我的 12 小时格式中没有前导零字符。一个空间很好..听起来很简单。大概是……
我想要的样式是:6:00 PM NOT 06:00 PM
$result[0][0] 是"2013-06-06 18:00:00" 的值
PHP 代码现在是:
echo strftime('%I:%M %p', strtotime($result[0][0]));
//upper case "i" WORKS but has leading zero
我认为我需要的PHP代码是:
echo strftime('%l:%M %p', strtotime($result[0][0]));
//Lower case "L" Provides no output
后者是因为根据php手册:
使用%l(小写“L”)生成 12 小时格式的小时,在单个数字 1 到 12 之前有一个空格
但是当我使用这种格式时,我什么也得不到!
我做错了什么简单的事情?
(嗯,有趣的是,上面的代码在 StackOverflow 屏幕上看起来完全一样,但我输入的是大写 i 和小写 L...实际上这里是大写 i -->“I”,这里是小写 L -->"l" ??) 他们在这个字体里看起来一模一样??
【问题讨论】:
-
当然!谢谢。我显然离问题太近了。 :) 但仍然想知道为什么?
-
能否提供
$result[0][0]的原始值? -
是 - 是:2013-06-06 18:00:00
标签: php time string-formatting