PHP 64bit на Windows и strtotime выше 2038 не работает

Мне известно о проблеме 2038 года в PHP из-за 32-битного ограничения целочисленных значений. Я знаю, что мне нужна 64-битная система, чтобы она работала.
Ну, я сделал это, я установил Apache 2.4.12 Win64 а также PHP Version 5.6.6RC1 - Thread Safe 64bit для окон. Я также на Windows 7 64bit.
И моя проблема в том, что strtotime по-прежнему не может обрабатывать даты выше 2038 года.
Может быть, в моей голове есть борьба, но я не могу найти проблему. Я прошу явно strtotimeя знаю решение DateTime который работает, но у меня есть старые проекты, которые используют много strtotime, Также я не могу избавиться от платформы Windows, это просто здесь, в нашей компании 🙁

var_dump(strtotime("2038-11-01"));
// output: bool(false)

Edit1: Я проверил php 7.0.0dev и здесь это работает. Похоже, я должен ждать PHP7, чтобы получить правильную 64-битную на Windows. К счастью, 7.0.0dev кажется мне довольно стабильным.

Edit2: С PHP7 проблема больше не существует. Больше не рекомендуется использовать любую ветку 5.x.

Вот мой вывод phpinfo
введите описание изображения здесь

1

Решение

Пожалуйста, попробуйте последний мастер снимок, чтобы получить здесь http://windows.php.net/downloads/snaps/master/ . В общем случае — не имеет значения, являются ли ваши окна 64-битными. В PHP5 базовый API является 32-битным для многих вещей, включая время и целые числа. PHP7 (основные сборки, которые я связал) имеет истинную 64-битную поддержку.

Благодарю.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]