C'est une erreur lorsque nous utilisons le tableau comme chaîne en PHP. Cette erreur se produit dans deux situations.
première scène
De tels scénarios sont relativement rares, et la plupart d'entre eux sont des débutants, et il est facile de trouver et de résoudre les erreurs. Littéralement, le tableau est utilisé comme une chaîne.
Exemple:
$ arr = array (0, 1, 2); // Erreur 1, les guillemets peuvent analyser la variable, mais entre guillemets, elle sera considérée comme une chaîne. var_dump ("$ arr"); // erreur 2echo $ arr; 123456
Dans ce cas, le résultat sera retourné:
PHP Remarque: Conversion de tableau en chaîne dans /chemin/test.php sur la ligne 5
Array
La solution est de convertir le tableau en chaîne et de le réutiliser: par exemple, utilisez json_encode ($ arr);
Scène deux
Il existe relativement peu de scénarios de ce type et il est difficile de comprendre ce qui n'a pas fonctionné simplement en regardant l'invite de conversion tableau en chaîne.
Lorsque nous utilisons curl, nous passons des paramètres à travers le post. Lorsque le paramètre est un tableau à deux dimensions, cette erreur sera signalée, ce qui est incroyable.
Exemple:
$ data = array ([0], [1], [3]); $ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, $ url); curl_setopt ($ ch, CURLOPT_HEADER, FALSE); curl_setopt ($ ch , CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ ch, CURLOPT_POST, 1); // 报错 行 curl_setopt ($ ch, CURLOPT_POSTFIELDS, $ data); $ result = curl_exec ($ ch); 1234567891011
La solution à ce problème est également très simple:
utilisez http_build_query () pour traiter les paramètres. Il est recommandé d'utiliser http_build_query pour tous les paramètres lors de l'utilisation de curl.
curl_setopt ($ ch, CURLOPT_POSTFIELDS, http_build_query ($ data));