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 時間戳(自 January 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"。 |