2017-08-02 2 views
0

Das ist mein Array ist in PHP codiert werden:Javascript JSON.parse kann nicht t von PHP parsen json_encode

array (size=1) 
    0 => 
    object(stdClass)[70] 
     public 'company' => string 'Mc.SUP s. r. o.' (length=15) 
     public 'fullname' => string '  Jaroslav Antoň' (length=17) 
     public 'id' => string '1956' (length=4) 
     public 'editable' => string '1' (length=1) 

Der String Ergebnis:

'[{"company":"Mc.SUP s. r. o.","fullname":" \tJaroslav Anto\u0148","id":"1956","editable":"1"}]' 

Beim Versuch, Javascript zu verwenden, JSON.parse Ich habe diese Fehlermeldung: SyntaxError: JSON.parse: schlechtes Steuerzeichen in Zeichenfolge literal Zeile 1 Spalte 56 der JSON-Daten

Ich habe es untersucht und die Problematik ist \ t.

Kennt jemand den einfachen Weg, wie man extra davon entkommen kann? So etwas wie Optionen in der json_encode-Funktion. Vielen Dank im Voraus

+2

Benötigen Sie diese '\ t's in den Werten? Warum entfernen Sie rekursiv alle führenden und nachgestellten Leerzeichen im Array? – eNeMetcH

+0

Mögliches Duplikat von [PHPs json \ _encode entgeht nicht allen JSON-Steuerzeichen] (https://stackoverflow.com/questions/1048487/phps-json-encode-does-not-escape-all-json-control-characters) –

Antwort

1

Die \t ist ein maskiertes Tab Zeichen benötigen Sie wirklich das Zeichen für die fullname Feld? Sie sollten das Tab-Zeichen möglicherweise entfernen, bevor Sie json_encode wie hier beschrieben tun: https://stackoverflow.com/a/17176793/2030937