字符串与 strtotime() 一起使用是否有效?
PHP 有 strtotime()
,它假定给定的输入是表示有效时间的字符串。在使用 strtotime()
之前,如何验证要提供给它的字符串是否采用其有效格式之一?
PHP has strtotime()
which assumes the input given is a string that represents a valid time. Before using strtotime()
, how can I verify that the string about to be given to it is in one of its valid formats?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果 strtotime() 无法理解您的日期格式,则返回 false,因此您可以检查其返回值。该函数没有任何副作用,因此尝试调用它不会有什么坏处。
但请注意,
strtotime()
仅支持与服务器体系结构相同范围的 Unix 时间戳。这意味着对于某些日期范围,它将错误地返回 false。来自手册:由于服务器架构可能有所不同,因此根据您的使用情况,您可能只能使用 32 位 Unix 时间戳,即使 64 位时间戳几乎涵盖了无限的时间段。
strtotime()
returns false if it can't understand your date format, so you can check its return value. The function doesn't have any side effects, so trying to call it won't hurt.Be warned, however, that
strtotime()
only supports the same range of Unix timestamps as the server architecture does. This means it will incorrectly return false for certain date ranges. From the manual:Because server architectures can vary, you may be limited to 32-bit Unix timestamps depending on your use case, even though 64-bit timestamps cover a practically infinite period of time.
实际上,在执行该函数之前您无法检查这一点,但您可以查看官方 php.net 页面。你唯一能做的就是检查你的函数是否返回“false”。
这是一个链接strtotime()。
有很多关于 strtotime() 功能的示例。
Actually you can't check that before executing the function, but you could take a look at the official php.net page. The only thing you can do is checking whether your function returns "false".
Here's a link strtotime().
There are a lot of examples of what you can do with strtotime().