2016-08-25 6 views
3

Не проблема (хотя это противоречит оператору if(), который у нас есть), но когда вы вводите strtotime («cast»), он возвращает фактическое значение, которое по умолчанию соответствует сегодняшней дате.Может ли кто-нибудь объяснить, почему strtotime ('cast') возвращает значение?

мне было просто интересно, если кто знает, какое значение это слово имеет литая, когда речь идет о функции времени

Спасибо!

+0

OK, чтобы, во-первых lolwut, а во-вторых 'StrToTime ('с') и' StrToTime ('кошка') 'также возвращать значения: - S – DaveRandom

ответ

4

Он соответствует timezone offset for "Australia/Adelaide".

Пример:

echo date('Y-m-d H:i:s'), "\n", 
    date('Y-m-d H:i:s', strtotime("cast")), "\n", 
    date('Y-m-d H:i:s', strtotime("Australia/Adelaide")); 

Печать:

2016-08-25 10:48:44 
2016-08-25 01:18:44 
2016-08-25 01:18:44 
+0

Точно. Таким образом, в основном любая сокращенная временная зона, указанная здесь http://www.timeanddate.com/time/zones/, должна использоваться в strtotime как «относительная дата» – CBroe

+0

@CBroe Не совсем, часовой пояс CAST, указанный здесь, для Антарктики и имеет другое смещение: +8 против Аделаиды +9: 30. –

+0

Хм, это звучит как довольно нечеткая реализация для меня; Я не могу представить, почему это было бы сопоставлено с другим часовым поясом, чем тот, который он на самом деле представляет? Тем более, что PHP знает часовой пояс «Антарктида/Кейси», как показывает http://php.net/manual/en/timezones.antarctica.php. – CBroe