如何将日期(“Ymd”)的输出转换为 PHP 中的数字? [复制]

Posted

技术标签:

【中文标题】如何将日期(“Ymd”)的输出转换为 PHP 中的数字? [复制]【英文标题】:How to convert output of date("Ymd") into a number in PHP? [duplicate] 【发布时间】:2017-11-16 20:07:14 【问题描述】:

我希望得到所需的输出,例如 20170613,它是一个整数。 我知道使用 strtotime() 可以获得整数形式的 UNIX 时间戳,但我不希望这样。 date("Ymd") 然而返回一个字符串。

我似乎无法找到将其转换为整数的方法。

编辑#1:这是我正在尝试的: $x = (int)date("Ymd"); 回声 $x;

但是,结果不会显示在浏览器中。事实上在开发者工具中,它显示内部服务器错误。

【问题讨论】:

投吧... 您应该尝试自己编写代码。在doing more research 之后,如果您有问题发布您尝试过的方法,并清楚地解释什么不起作用,并提供a Minimal, Complete, and Verifiable example。阅读How to Ask 一个好问题。请务必take the tour 并阅读this。 Type casting....在php Documentation中有一节介绍 【参考方案1】:

Google 的术语是“类型转换”。这会将您带到PHP type juggling docs on integer casting。

以此为参考点,规范的做法是:

$int = (int)date('Ymd');

为了完整起见,您还可以使用等效的完整形式:

$int = (integer)date('Ymd');

或函数式:

$int = intval(date('Ymd'));

【讨论】:

在 9223372036854775807 (PHP_INT_MAX) 年,他的代码将静默中断。确保及时警告 9223372036854775807 年维护者,并确保错误不会传播,您应该这样做$int = filter_var(date('Ymd'),FILTER_VALIDATE_INT);if(false===$int)throw new \LogicException('failed to convert date to php integer!');

以上是关于如何将日期(“Ymd”)的输出转换为 PHP 中的数字? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何把Excel中的8位的日期字符串转换为日期

怎样用matlab将字符串数组转为日期数组??

怎么将excel的日期格式YYYYMMDD转换为YYYY-MM-DD

如何使用 PHP 将日期数组转换为 3 级嵌套列表

如何从现有格式转换php中的日期格式[重复]

如何在特殊时区将当前日期和时间转换为PHP中的十进制(16,4)[重复]