@@Nico R.
Jetzt, wo ich nochmal draufgestarrt habe, ist mir doch noch ein Licht aufgegangen. Die Kombination aus ="{" ging natürlich nicht. Mit
let toreArrayDB = '<?=json_encode($toreArray)?>';
hats funktioniert.
Ja, wenn du "
außen als Stringbegrenzer verwendest, darf im String natürlich kein nicht-escapetes "
sein. Da ist '
als Stringbegrenzer zu verwenden richtig. Und, wie @MudGuard schon anmerkte, darf dann natürlich kein nicht-escapetes '
im String sein.
(Sollten welche vorkommen, müssten sie entweder als \'
escapet werden oder – wenn es sich um Text handelt – durch richtige Apostrophe ’
ersetzt werden.)
Andersrum außen "
und innen '
würde nicht funktionieren, da das JSON-Format nur "
, aber nicht '
als Stringbegrenzer zulässt.
Warum hast du numerische Werte überhaupt als Strings im JSON? Die Identifier (vor den :
) müssen Strings sein, aber die Werte nach den [
nicht. Das ist auch valides JSON:
{"0":[347,{"1":[10,null]}],"1":[344,{"1":[20,"1"],"2":[30,null]}],"3":[338,{"1":[30,null]}]}
Kwakoni Yiquan
Ad astra per aspera