У меня проблема с кодировкой кодировки, дело в том, что когда я тестирую свой сайт на локальном компьютере (MAMP PHP 5.5.3), все работает нормально, мой объект JSON возвращается без проблем. Но в prod с сервером, размещенным на DreamHost (PHP 5.4), он не работает и выдает мне эту ошибку
json_encode(): недопустимая последовательность UTF-8 в аргументе.
(Это ошибка, вызванная Laravel
в файле JsonResponse.php
методом setData
).
Итак, как может быть ошибка на моем онлайн-сервере, а не на моем локальном?
ИЗМЕНИТЬ:
Это мой заголовок ответа:
Connection:Keep-Alive
Content-Encoding:gzip
Content-Length:1371
Content-Type:text/html; charset=UTF-8
Date:Thu, 02 Oct 2014 11:56:30 GMT
Expires:Thu, 02 Oct 2014 11:56:31 GMT
Keep-Alive:timeout=2, max=100
Server:Apache
Vary:Accept-Encoding,User-Agent
должно быть : Content-Type:application/json; charset=utf-8
?
Но я не могу переопределить заголовок. Это не работает:
$response->header('Content-Type', 'application/json');
$response->header('charset', 'utf-8');
var_dump()
что вы пытаетесь закодировать с помощью::setData()
? - person Sam   schedule 01.10.2014