J'ai créé un programme C++ avec des combinaisons de cout pour obtenir une sortie en tant que chaîne JSON afin de pouvoir le décoder en PHP en utilisant la fonction json_decode. J'ai généré la chaîne avec ma propre logique. Je crois qu'il y a un problème dans la chaîne de sortie, mais je suis incapable de le trouver même après avoir passé des heures.Une chaîne JSON malformée a besoin de correction pour PHP
Le var_dump (json_decode ($ string, TRUE)); émet
NULL
json_last_error_msg(); donne
quoted object property name expected
json_last_error(); donne
4
La chaîne d'origine, je suis en train de décoder en utilisant json_decode ($ string, TRUE) en PHP5, Plate-forme: x64 Ubuntu 14.04 LTS (apache2, php5, php5-json) installé
{"initUserGrid" :{ { 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 1 , 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 } , { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }},"initBotGrid" :{ { 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }},"moves" : { "user" : {7 , 6} , "bot" : {0 , 6} , "user" : {2 , 9} , "bot" : {1 , 4} , "user" : {8 , 1} , "bot" : {2 , 4} , "user" : {9 , 9} , "bot" : {0 , 9} , "user" : {9 , 4} , "bot" : {3 , 2} , "bot" : {6 , 6} , "user" : {8 , 8} , "bot" : {4 , 0} , "bot" : {4 , 0} , "user" : {6 , 5} , "bot" : {2 , 7} , "user" : {3 , 3} , "user" : {4 , 4} , "bot" : {9 , 7} , "user" : {9 , 7} , "bot" : {1 , 9} , "user" : {8 , 3} , "bot" : {4 , 3} , "bot" : {7 , 8} , "user" : {0 , 4} , "bot" : {2 , 2} , "bot" : {1 , 8} , "user" : {0 , 1} , "user" : {1 , 7} , "bot" : {2 , 4} , "user" : {4 , 9} , "bot" : {4 , 4} , "bot" : {1 , 7} , "user" : {5 , 8} , "bot" : {5 , 0} , "user" : {9 , 6} , "bot" : {9 , 7} , "user" : {0 , 9} , "bot" : {9 , 4} , "user" : {0 , 9} , "bot" : {1 , 1} , "bot" : {1 , 4} , "user" : {5 , 4} , "bot" : {1 , 1} , "user" : {7 , 8} , "bot" : {7 , 6} , "user" : {2 , 1} , "user" : {1 , 1} , "user" : {1 , 3} , "bot" : {5 , 6} , "user" : {2 , 7} , "bot" : {6 , 4} , "user" : {5 , 3} , "bot" : {9 , 8} , "user" : {7 , 4} , "bot" : {5 , 9} , "user" : {4 , 0} , "user" : {5 , 6} , "bot" : {9 , 1} , "user" : {2 , 8} , "bot" : {4 , 9} , "user" : {0 , 9} , "bot" : {3 , 9} , "user" : {2 , 1} , "bot" : {9 , 4} , "user" : {3 , 8} , "bot" : {4 , 3} , "user" : {7 , 1} , "bot" : {9 , 0} , "user" : {6 , 6} , "bot" : {8 , 8} , "user" : {9 , 4} , "bot" : {0 , 4} , "user" : {7 , 6} , "bot" : {6 , 2} , "user" : {1 , 9} , "bot" : {1 , 1} , "user" : {2 , 3} , "bot" : {7 , 6} , "user" : {0 , 4} , "bot" : {4 , 6} , "user" : {0 , 6} , "bot" : {7 , 1} , "user" : {3 , 9} , "bot" : {7 , 9} , "user" : {7 , 9} , "bot" : {3 , 7} , "user" : {1 , 8} , "bot" : {6 , 6} , "user" : {0 , 1} , "bot" : {2 , 3} , "user" : {6 , 1} , "bot" : {4 , 3} , "user" : {9 , 8} , "bot" : {4 , 1} , "bot" : {0 , 2} , "user" : {8 , 9} , "bot" : {0 , 0} , "bot" : {9 , 7} , "user" : {6 , 3} , "bot" : {4 , 8} , "user" : {6 , 6} , "bot" : {4 , 0} , "user" : {6 , 9} , "bot" : {0 , 3} , "user" : {6 , 6} , "bot" : {9 , 3} , "user" : {8 , 2} , "bot" : {2 , 5} , "user" : {7 , 0} , "user" : {2 , 6} , "bot" : {5 , 7} , "user" : {9 , 2} , "bot" : {9 , 7} , "user" : {2 , 0} , "user" : {8 , 8} , "bot" : {4 , 7} , "user" : {7 , 6} , "bot" : {6 , 0} , "user" : {3 , 5} , "bot" : {3 , 8} , "user" : {1 , 1} , "bot" : {5 , 2} , "user" : {9 , 2} , "bot" : {2 , 7} , "user" : {4 , 6} , "bot" : {5 , 4} , "user" : {8 , 1} , "bot" : {9 , 6} , "user" : {6 , 9} , "bot" : {7 , 3} , "user" : {0 , 7} , "bot" : {3 , 3} , "bot" : {4 , 9} , "user" : {6 , 1} , "bot" : {0 , 9} , "user" : {3 , 9} , "bot" : {3 , 3} , "user" : {5 , 8} , "bot" : {6 , 3} , "user" : {1 , 9} , "bot" : {5 , 0} , "user" : {3 , 9} , "bot" : {5 , 3} , "user" : {3 , 4} , "bot" : {8 , 4} , "user" : {3 , 2} , "user" : {6 , 0} , "user" : {0 , 8} , "bot" : {0 , 2} , "user" : {3 , 8} , "bot" : {8 , 0} , "user" : {5 , 6} , "bot" : {5 , 3} , "user" : {8 , 3} , "bot" : {2 , 1} , "bot" : {3 , 0} , "bot" : {1 , 8} , "user" : {1 , 6} , "bot" : {3 , 6} , "user" : {0 , 6} , "bot" : {9 , 1} , "user" : {1 , 5} , "bot" : {4 , 7} , "user" : {9 , 3} , "bot" : {2 , 4} , "user" : {6 , 2} , "bot" : {9 , 2} , "user" : {7 , 1} , "bot" : {4 , 4} , "user" : {7 , 6} , "bot" : {8 , 9} , "user" : {7 , 0} , "bot" : {8 , 9} , "user" : {5 , 0} , "user" : {9 , 3} , "bot" : {4 , 8}},"result" : "bot"}
indenté version (sans enlever '\ n')
{
"initUserGrid" :
{
{ 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 1 , 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 }
, { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
}
,
"initBotGrid" :
{
{ 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
, { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }
}
,
"moves" : {
"user" : {7 , 6}
, "bot" : {0 , 6}
, "user" : {2 , 9}
, "bot" : {1 , 4}
, "user" : {8 , 1}
, "bot" : {2 , 4}
, "user" : {9 , 9}
, "bot" : {0 , 9}
, "user" : {9 , 4}
, "bot" : {3 , 2}
, "bot" : {6 , 6}
, "user" : {8 , 8}
, "bot" : {4 , 0}
, "bot" : {4 , 0}
, "user" : {6 , 5}
, "bot" : {2 , 7}
, "user" : {3 , 3}
, "user" : {4 , 4}
, "bot" : {9 , 7}
, "user" : {9 , 7}
, "bot" : {1 , 9}
, "user" : {8 , 3}
, "bot" : {4 , 3}
, "bot" : {7 , 8}
, "user" : {0 , 4}
, "bot" : {2 , 2}
, "bot" : {1 , 8}
, "user" : {0 , 1}
, "user" : {1 , 7}
, "bot" : {2 , 4}
, "user" : {4 , 9}
, "bot" : {4 , 4}
, "bot" : {1 , 7}
, "user" : {5 , 8}
, "bot" : {5 , 0}
, "user" : {9 , 6}
, "bot" : {9 , 7}
, "user" : {0 , 9}
, "bot" : {9 , 4}
, "user" : {0 , 9}
, "bot" : {1 , 1}
, "bot" : {1 , 4}
, "user" : {5 , 4}
, "bot" : {1 , 1}
, "user" : {7 , 8}
, "bot" : {7 , 6}
, "user" : {2 , 1}
, "user" : {1 , 1}
, "user" : {1 , 3}
, "bot" : {5 , 6}
, "user" : {2 , 7}
, "bot" : {6 , 4}
, "user" : {5 , 3}
, "bot" : {9 , 8}
, "user" : {7 , 4}
, "bot" : {5 , 9}
, "user" : {4 , 0}
, "user" : {5 , 6}
, "bot" : {9 , 1}
, "user" : {2 , 8}
, "bot" : {4 , 9}
, "user" : {0 , 9}
, "bot" : {3 , 9}
, "user" : {2 , 1}
, "bot" : {9 , 4}
, "user" : {3 , 8}
, "bot" : {4 , 3}
, "user" : {7 , 1}
, "bot" : {9 , 0}
, "user" : {6 , 6}
, "bot" : {8 , 8}
, "user" : {9 , 4}
, "bot" : {0 , 4}
, "user" : {7 , 6}
, "bot" : {6 , 2}
, "user" : {1 , 9}
, "bot" : {1 , 1}
, "user" : {2 , 3}
, "bot" : {7 , 6}
, "user" : {0 , 4}
, "bot" : {4 , 6}
, "user" : {0 , 6}
, "bot" : {7 , 1}
, "user" : {3 , 9}
, "bot" : {7 , 9}
, "user" : {7 , 9}
, "bot" : {3 , 7}
, "user" : {1 , 8}
, "bot" : {6 , 6}
, "user" : {0 , 1}
, "bot" : {2 , 3}
, "user" : {6 , 1}
, "bot" : {4 , 3}
, "user" : {9 , 8}
, "bot" : {4 , 1}
, "bot" : {0 , 2}
, "user" : {8 , 9}
, "bot" : {0 , 0}
, "bot" : {9 , 7}
, "user" : {6 , 3}
, "bot" : {4 , 8}
, "user" : {6 , 6}
, "bot" : {4 , 0}
, "user" : {6 , 9}
, "bot" : {0 , 3}
, "user" : {6 , 6}
, "bot" : {9 , 3}
, "user" : {8 , 2}
, "bot" : {2 , 5}
, "user" : {7 , 0}
, "user" : {2 , 6}
, "bot" : {5 , 7}
, "user" : {9 , 2}
, "bot" : {9 , 7}
, "user" : {2 , 0}
, "user" : {8 , 8}
, "bot" : {4 , 7}
, "user" : {7 , 6}
, "bot" : {6 , 0}
, "user" : {3 , 5}
, "bot" : {3 , 8}
, "user" : {1 , 1}
, "bot" : {5 , 2}
, "user" : {9 , 2}
, "bot" : {2 , 7}
, "user" : {4 , 6}
, "bot" : {5 , 4}
, "user" : {8 , 1}
, "bot" : {9 , 6}
, "user" : {6 , 9}
, "bot" : {7 , 3}
, "user" : {0 , 7}
, "bot" : {3 , 3}
, "bot" : {4 , 9}
, "user" : {6 , 1}
, "bot" : {0 , 9}
, "user" : {3 , 9}
, "bot" : {3 , 3}
, "user" : {5 , 8}
, "bot" : {6 , 3}
, "user" : {1 , 9}
, "bot" : {5 , 0}
, "user" : {3 , 9}
, "bot" : {5 , 3}
, "user" : {3 , 4}
, "bot" : {8 , 4}
, "user" : {3 , 2}
, "user" : {6 , 0}
, "user" : {0 , 8}
, "bot" : {0 , 2}
, "user" : {3 , 8}
, "bot" : {8 , 0}
, "user" : {5 , 6}
, "bot" : {5 , 3}
, "user" : {8 , 3}
, "bot" : {2 , 1}
, "bot" : {3 , 0}
, "bot" : {1 , 8}
, "user" : {1 , 6}
, "bot" : {3 , 6}
, "user" : {0 , 6}
, "bot" : {9 , 1}
, "user" : {1 , 5}
, "bot" : {4 , 7}
, "user" : {9 , 3}
, "bot" : {2 , 4}
, "user" : {6 , 2}
, "bot" : {9 , 2}
, "user" : {7 , 1}
, "bot" : {4 , 4}
, "user" : {7 , 6}
, "bot" : {8 , 9}
, "user" : {7 , 0}
, "bot" : {8 , 9}
, "user" : {5 , 0}
, "user" : {9 , 3}
, "bot" : {4 , 8}
}
,
"result" : "bot"
}
'{...}' est pour les objets, le contenu doit être des paires '' clé ': value'. Qu'est-ce que '{7, 6}' est censé être? – Barmar
Si vous voulez écrire votre propre encodeur JSON, vous devriez peut-être lire la spécification JSON. C'est sur json.org. – Barmar
Merci pour les réponses – cppxaxa