今天特定时间的 Unix 时间戳

Fai*_*ani 5 php unix time date

我正在使用此代码在 php 中获取当前的 unix 时间。

echo time();
Run Code Online (Sandbox Code Playgroud)

它给了我这个结果

1480578383
Run Code Online (Sandbox Code Playgroud)

如果我将其转换为可读日期,那么它将是

Thu, 01 Dec 2016 07:46:23 GMT
Run Code Online (Sandbox Code Playgroud)

好吧,我不想那样。我想要的是一个可以给我今天的日期和特定时间的函数,即 23:00:00。

当我将其转换为可读日期时,它应该是

Thu, 01 Dec 2016 23:00:00 GMT
Run Code Online (Sandbox Code Playgroud)

“2016 年 12 月 1 日星期四”是当前日期。

Álv*_*lez 3

我将假设规格是:

获取当前时区今日 23:00:00

代码如下所示:

mktime(23, 0, 0);
Run Code Online (Sandbox Code Playgroud)

... 或者:

strtotime('today 23:00:00')
Run Code Online (Sandbox Code Playgroud)

... 要不就:

strtotime('23:00:00')
Run Code Online (Sandbox Code Playgroud)

测试代码

$time_zones = array(
    'America/Chicago',
    'GMT',
    'Europe/Berlin',
);
foreach($time_zones as $time_zone){
    date_default_timezone_set($time_zone);
    $t1 = mktime(23, 0, 0);
    $t2 = strtotime('today 23:00:00');
    $t3 = strtotime('23:00:00');
    echo date('r', $t1) . ' / ' . date('r', $t2) . ' / ' . date('r', $t3) . PHP_EOL;
}
Run Code Online (Sandbox Code Playgroud)
mktime(23, 0, 0);
Run Code Online (Sandbox Code Playgroud)

请在mktime()strtotime()手册页中找到更多详细信息。