Вкладка и препровождение в JSON-выход в Chrome

Я использую этот простой код для печати массива как структуры JSON.

header('Content-Type: application/json'); echo json_encode($this->data, JSON_PRETTY_PRINT); 

Я использую Chrome версии 28.0.1500.95 m. По какой-то нечетной причине вывод завершается в pre-тег символом табуляции (т. Е. \t ) в начале.

JSON, похоже, разбирается хорошо, но я все равно получаю этот символ табуляции, когда данные не отправляются. Как я могу это исправить ?

 <pre style="word-wrap: break-word; white-space: pre-wrap;"> { "title": "Node", "items": [ { "label": "Do stuff", "icon": "..\/ui\/images\/icons\/16x16\/icon.png", "action": "dostuff" } ] }</pre> 

Изменить: Вот код на стороне jQuery:

 $.ajax({ url : "/myproject/getmenu/", type : 'GET', dataType: "json", success : function(data) { //alert(JSON.stringify(data,undefined,2)); if (jQuery.isEmptyObject(data)) { return; } title = data.title; items = data.items; selected.contextPopup({ title : title, items : items }); } }); 

    Вам нужно удалить любой код, добавляющий <pre> . Это приводит к тому, что ваш ответ недействителен. JSON (пробелы, чтобы отпечатать это не проблема), и, таким образом, jQuery не удается выполнить синтаксический анализ.

    Я не мог видеть ничего в документах PHP о ответе JSON, который был обернут в <pre> но вы могли бы попробовать его без флага. Я также должен проверить, действительно ли тег в вашем ответе. Если вы используете источник просмотра и имеете установленное расширение браузера JSON-pretty-printing, оно может быть добавлено этим расширением и не находиться в фактическом JSON, обрабатываемом вашим кодом JavaScript.

    Хм, я искал правильный ответ, но ни один из них не работал. но я пытался сделать так, как следует, и это сработало для меня …

    1- Я установил тип контента в application / json

    2- Я использовал die(json_encode($this->data)) вместо echo json_encode($this->data)

    надеюсь, что это сработает для вас, хотя я думаю, что это слишком поздно: D простите меня за ответ на старый вопрос, который я недавно столкнулся с тем же вопросом