基于语言环境的 php 输出时间

标签 php

我正在从事一个项目,该项目要求我以语言环境格式列出一天中的 24 小时。

这是我的:

$time_fmt = datefmt_create(ICL_LANGUAGE_CODE, IntlDateFormatter::LONG, IntlDateFormatter::LONG, '', IntlDateFormatter::GREGORIAN, 'H:i');
echo datefmt_format($time_fmt, mktime(1, 0));

这似乎应该是 01:00 或 1:00am,具体取决于语言环境。但是,它输出的是“8:”。

如何使用 datefmt_create() 和 dtefmt_format() 以语言环境格式列出一天中的 24 小时?

最佳答案

像这样的东西应该可以工作

$time = strtotime('English Date With Time');
date_default_timezone_set('America/Los_Angeles or wherever');
echo date('H:i', $time);

如果您只计算小时数,而不是日期,那么只需知道您所在的时区即可。将所有内容转换为 UTC 并做一些对 24 取模的数学运算。

关于基于语言环境的 php 输出时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18649936/

相关文章:

javascript - Magento 菜单上的自定义 javascript

php - 使用 PHP 和 cURL 复制 HTTP 请求

php - 如果已提交 key ,则附加值(表单中的复选框) PHP

javascript - wordpress 的本地主机 : correct way to link reference css/js files?

php - fopen 权限被拒绝,Ubuntu,CodeIgniter

php - Laravel [5.3|5.4] 测试作业中的作业调度

php - 在 Google Cloud 上使用 POST 表单部署 php 项目运行

php - mysql_query 返回值为 0

javascript - Jquery/Javascript 数据表 : How to display row data into html textfield on row selection

php - 从 php 脚本执行 proc_open 以连接到 pgsql 时出错