如何将日期(“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 中的数字? [复制]的主要内容,如果未能解决你的问题,请参考以下文章