В связи с этим вопросом я получаю неправильное значение для измененная дата при запросе соединения Windows ADODB для индексации файлов.
Это строка или запрос:
$recordset - > Open("SELECT System.ItemName, System.DateModified FROM SYSTEMINDEX WHERE DIRECTORY='file:C:/xxxx/' AND CONTAINS('xxxx')", $conn);
Я получаю хорошие результаты на локальном хосте (php 5.5.6), но не на других серверах (php 5.5.8). Я получаю неправильное значение timestamp
, и поэтому оно преобразует его в неправильную дату, когда я использую функции PHP для создания собственного формата:
date_default_timezone_set(ini_get('date.timezone'));
$date = $recordset->Fields->Item("System.DateModified")->Value;
$timestamp = variant_date_to_timestamp($date); //getting a wrong date here
$file['date'] => date('d-M-Y H:i:s', $timestamp);
Между ожидаемым результатом и результатом, который я получаю, разница в несколько часов. (два часа)
Кажется, это связано с variant_date_to_timestamp
функция PHP. Я уже установил правильный date.timezone
в файле php.ini и добавил вызов date_default_timezone_set
перед вызовом variant_date_to_timestamp
.
Я использую PHP 5.5.8.
Я нашел подобную проблему/ошибку с комментариями в 2004 году. Это говорит о двухчасовой разнице, а также. Мне трудно поверить, что она еще не решена.
Europe/Berlin
для обоих случаев. - person Alvaro   schedule 14.04.2014date.timezone
установлен правильно, аini_get('date.timezone')
возвращает правильное значение. Почему это? - person Alvaro   schedule 24.04.2014