2012-03-20 3 views
1

Я работаю над PHP-скриптом для Wordpress, и я делаю вызов API для нашей системы и включает в себя строку DateTime .Net для Json. Используя регулярные выражения, я разделил их на секунды после Unix Epoch. Насколько я понимаю, я должен был бы затем создать объект DateTime, используя DateTime :: createFromFormat ('U', $ time); но сценарий прекращает выполнение, когда он встречает его (он выполняет все до этой точки). Я завернул его в try/catch, но даже это не выполняется, он просто «умирает», я думаю.PHP прекращает выполнение, когда достигает строки кода

Что здесь происходит?

preg_match_all('/\d+/', $post->discussion->posttime, &$ms); 
$ms = $ms[0]; 
var_dump($ms[0]); 
$time = substr($ms[0], 0, strlen($ms[0]) - 3); 
var_dump($time); 
$date = DateTime::createFromFormat('U', $time); 
//Nothing after the above line is executed 
var_dump($date); 
... 

Выход на страницу выглядит следующим образом:

string(13) "1332244919776" 
string(10) "1332244919" 

Ничего я поставил после того, как появится строка DateTime (или, насколько я могу судить, казнены). Я использовал действительные временные метки Unix из Интернета, и он по-прежнему не работает. Я также пробовал другие форматы («Y-m-d») с соответствующими форматами строк даты, и ни один из них не работал. Создание регулярного объекта 'now' DateTime с использованием новой DateTime(); работает.

+3

Добавить эту строку перед чем-либо еще: 'error_reporting (E_ERROR | E_WARNING | E_PARSE | E_NOTICE);'. Затем запустите свой скрипт и сообщите нам о выходе. –

+0

Да, косвенным ответом является то, что вы должны включить отчет об ошибках и выяснить, что происходит. Добавьте предложенный штрихкод. Вам может потребоваться добавить строку 'ini_set (" display_errors "," 1 ");' также. – octern

ответ

1

Это звучит как фатальная ошибка с сообщением об ошибке.

Наиболее вероятной причиной проблемы является то, что вы используете версию php < 5.3. Поддержка версии createFromFormat была добавлена ​​в версии 5.3, а объект DateTime был добавлен в версию 5.2.

+0

phpinfo говорит «PHP Version 5.2.13», вы правы! Благодарю. –

+0

@ Крис Добро пожаловать. – jeroen

Смежные вопросы