2015-01-16 2 views
1

У меня проблема, когда на сервере вывод var_dump и print_r выходят полностью искаженные. print_r выводит чистую тарабарщину (например, ��]{W�8�����- ... и т. Д.), А var_dump по крайней мере дает string (1664), за которым следует аналогичная тарабарщина (хотя на этот раз завернуты в двойные кавычки).PHP-файл var_dump/print_r искажен - проблема с кодировкой?

Это похоже на проблему с кодировкой символов, но никакая кодировка, которую я могу найти, по-видимому, исправляет ее (и я не знаю, почему просто демпинг объекта PHP должен выводить символы без символов ascii), а echo отлично работает. В качестве альтернативы, интересно, может ли это быть проблемой gzip. В любом случае, я подозреваю, что это должно быть что-то в конфигурации PHP или Apache, но я понятия не имею, как это исправить.

Буду очень признателен, если у кого есть предложения по устранению этого!


Update: на доследование, кажется, это проблема, специфичные для конкретного объекта я пытаюсь сбросить. Объект, о котором идет речь, декодируется JSON, запрошенным (через curl) из API. Возможно ли, что либо json_decode, либо curl может быть неправильно сконфигурирован/изменен кодировкой?

+0

Возможный дубликат: http://stackoverflow.com/questions/4279282/set-http-header-to-utf-8-using-php – Alex

+0

Нет, насколько я вижу, это другая проблема. Это не общая проблема кодирования. Это проблема с выводами 'print_r' и' var_dump' –

+0

Что именно вы пытаетесь напечатать? – Alex

ответ

0

Для чего это стоит, я, наконец, добрался до нижней части этой проблемы (я думаю!)

Проблема, кажется, что выход в API, в настоящее время проходят через json_decode ли это JSON или нет. Ошибки MySQL вызывали страницу с ошибкой, а не ответ JSON, который при прохождении через json_decode (по коду обработки API, который получил его) до var_dump, производил салат из обернутого персонажа, как указано выше.

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