strtotime()
是 PHP 中的一個(gè)內(nèi)置函數(shù),用于將任何英文文本的日期時(shí)間描述解析為 Unix 時(shí)間戳。這個(gè)時(shí)間戳是自 1970 年 1 月 1 日(UTC/GMT 的午夜)開(kāi)始所經(jīng)過(guò)的秒數(shù)。
下面是如何使用 strtotime()
函數(shù)來(lái)轉(zhuǎn)換日期的示例:
<?php
// 將一個(gè)具體的日期字符串轉(zhuǎn)換為 Unix 時(shí)間戳
$date_string = "2022-06-30";
$timestamp = strtotime($date_string);
echo $timestamp; // 輸出結(jié)果:1656489600
// 將一個(gè)相對(duì)日期字符串轉(zhuǎn)換為 Unix 時(shí)間戳
$relative_date_string = "-1 day";
$relative_timestamp = strtotime($relative_date_string);
echo $relative_timestamp; // 輸出結(jié)果:1656384000 (這是 2022-06-29 的 Unix 時(shí)間戳)
?>
你還可以在 strtotime()
函數(shù)中使用第二個(gè)參數(shù)來(lái)指定時(shí)區(qū)。例如:
<?php
// 將一個(gè)日期字符串轉(zhuǎn)換為指定時(shí)區(qū)的 Unix 時(shí)間戳
$date_string = "2022-06-30";
$timezone = "America/New_York";
$timestamp = strtotime($date_string, strtotime("now", $timezone));
echo $timestamp; // 輸出結(jié)果:根據(jù)紐約時(shí)區(qū)的 2022-06-30 的 Unix 時(shí)間戳
?>
在這個(gè)例子中,我們首先使用 strtotime("now", $timezone)
獲取紐約時(shí)區(qū)的當(dāng)前 Unix 時(shí)間戳,然后將其作為第二個(gè)參數(shù)傳遞給 strtotime()
函數(shù),以便將日期字符串轉(zhuǎn)換為紐約時(shí)區(qū)的 Unix 時(shí)間戳。