【发布时间】:2016-06-15 20:13:31
【问题描述】:
当我提供仅包含空格或任何其他字符的字符串时,strtotime(" ") 不会返回 false。
有没有更少的代码解决方案让它返回false?
我不能使用preg_match,因为日期格式都因每个用户的语言环境而异。
http://php.net/manual/en/function.strtotime.php
成功返回时间戳,否则返回 FALSE。 PHP 之前 5.1.0,此函数将在失败时返回 -1。
编辑:我需要验证日期字符串,而不是修剪空格或其他用户提供的字符。
【问题讨论】:
-
@AlexG Trim 只去除字符串的开头和结尾。
-
各位,我不需要删除空格,我需要验证日期字符串。查看我的编辑。
-
Fwiw,修剪本身不是目标,它只是防止将纯空格参数传递给
strtotime()的有用操作。 -
strtotime应该返回 false 如果它不是一个有效的格式,为什么要用trim()来帮助它? -
如果您的目标不是解决特定任务,并且您将函数行为视为错误,那么reporting a PHP bug 可能更有意义,而不是在这里询问。它实际上已经在 2014-01-15 上reported。