Zobrazení JSON v prohlížeči

kolibla
Člen | 25
+
0
-

Ahojky jsem naprostá začátečnice, ale mám kód:

<?php
header('Content-Type: application/json');
return json_encode(array('a' => 'aaa', 'b' => 'bbb', 'c' => 'ccc'), JSON_PRETTY_PRINT);

Jenže mi to pole po převodu do jsonu udělá v prohlížečce – v módu surové data:

string(50) "{
    "a": "aaa",
    "b": "bbb",
    "c": "ccc"
}"

V některých případech mi to dokonce slashuje data: „jmeno“: „Mark\u00e9ta“ – to má být Markéta

Pokud zvolím mód JSON v prohlížečce, tak vyletí chyba:
SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data

Děkuji předem za pomoc.

kolibla
Člen | 25
+
0
-
return json_encode(array('a' => 'aaa', 'b' => 'bbb', 'c' => 'ccc'), JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES);

Tohle už je lepší, rozezná to Markétu.

string(3445) "{ }" - ale tohle se drží na začátku a nejspíš to zabije.

kolibla
Člen | 25
+
+4
-

Už to mám. Já blbka jsem to pouštěla přes var_dump a stačí echo..

petr.pavel
Člen | 535
+
0
-

Vzhledem k tomu, že je tohle fórum Nette, bylo by systémovější použít sendJson(). To se ti postará o encoding i o hlavičku.

Šaman
Člen | 2667
+
0
-

A dump() nebo bdump() pro náhled výsledků. Místo var_dump a echo.
A teda nechápu úplně v čem byl problém – ty složené závorky tam samozřejmě patří – je to JSON.