Это довольно загадочно для меня, и я не понимаю, почему это происходит.
На моем локальном хосте под управлением Windows 8.1 Enterprise Edition с PHP 5.6.15 на XAMPP
<?php var_dump(json_decode('26-10-2017'));
возвращается
NULL
в то время как на Linode box работает Ubuntu 14.04 LTS с PHP 5.5.9 на LAMP (работает Sentora Panel)
я получил
int(26)
Я был бы очень признателен всем, кто может объяснить мне это явление.
Я знаю, что это недопустимый JSON, однако я собираюсь узнать, что является причиной этой разницы в выходных данных и как этого избежать.
Я старался json_last_error()
на самом деле я пытался
function isValidJSON($string) {
json_decode($string);
return (json_last_error() == JSON_ERROR_NONE);
}
Тем не менее, он не показывает никаких ошибок.
<?php var_dump(json_decode('26-10-2017')); var_dump(json_last_error());
Возвращает
int(26)
int(0)
Спасибо!
Проверьте json_last_error () которая возвращает последнюю ошибку (если есть), произошедшую во время последней кодировки / декодирования JSON.
Я надеюсь, вы найдете интересные факты 🙂 Cheerse !!
Других решений пока нет …