دالة PHP strtotime()
مثال
تحويل النص باللغة الإنجليزية للوقت أو التاريخ إلى سجون Unix:
<?php echo(strtotime("now") . "<br>"); echo(strtotime("15 October 1980") . "<br>"); echo(strtotime("+5 hours") . "<br>"); echo(strtotime("+1 week") . "<br>"); echo(strtotime("+1 week 3 days 7 hours 5 seconds") . "<br>"); echo(strtotime("next Monday") . "<br>"); echo(strtotime("last Sunday")); ?>
التعريف والاستخدام
يحول دالة strtotime() أي نص باللغة الإنجليزية للوقت أو التاريخ إلى سجون Unix (عدد الثواني من 1 يناير 1970 00:00:00 GMT).
ملاحظة:إذا تم تمثيل السنة باستخدام تنسيق الرقمين، فإن القيم 0-69 ستتمكن من التحويل إلى 2000-2069، والقيم 70-100 ستتمكن من التحويل إلى 1970-2000.
ملاحظة:يرجى الانتباه إلى تنسيق التاريخ m/d/y أو d-m-y، إذا كان علامة التباين هي الشرطة السفلية (/)، فاستخدم تنسيق m/d/y لأمريكا. إذا كانت علامة التباين هي العارضة (-) أو النقطة (.), فإنك يجب أن تستخدم تنسيق d-m-y لأوروبا. من أجل تجنب الأخطاء المحتملة، يجب أن تستخدم تنسيق YYYY-MM-DD أو استخدام دالة date_create_from_format().
语法
strtotime(time,now);
参数 | 描述 |
---|---|
time | 必需。规定日期/时间字符串。 |
now | 可选。规定用来计算返回值的时间戳。如果省略该参数,则使用当前时间。 |
技术细节
返回值: | 若成功则返回时间戳,失败则返回 FALSE。 |
---|---|
PHP 版本: | 4+ |
更新日志:
5.3.0: | 现在相对时间格式,比如这一周、前一周、上一周、下一周,规定一周从星期一到星期日,而不是使用相对于当前日期/时间的前后 7 天。 |
5.3.0 | 在 PHP 5.3.0 之前, 24:00 不是一个有效的格式,并且 strtotime() 会返回 FALSE。 |
5.2.7 | 在这之前的版本中,如果请求一个月中某个给定日期且该日期刚好是该月的第一天,则会错误地把增加一个星期到返回的时间戳中,这点现在已经得到更正。 |
5.1.0 | 如果失败则返回 FALSE(在这之前的版本则返回 -1),并增加了 E_STRICT 和 E_NOTICE 时区错误。 |
5.0.2 | 现在正确计算 "now" 和其他相对时间是以当前时间为准,而不是以今天午夜的时间为准。 |
5.0.0 | 允许微秒(但微秒数通常被忽略)。 |
4.4.0 | 在 PHP 4.4 之前,"next" 被错误计算为 +2。对此通常的解决方法是用 "+1"。 |