Maison  >  Article  >  développement back-end  >  Que faire lorsque php invite Array

Que faire lorsque php invite Array

醉折花枝作酒筹
醉折花枝作酒筹avant
2021-04-06 11:29:222196parcourir

Cet article expliquera l'utilisation de tableaux comme chaînes. PHP propose deux solutions pour la conversion de tableau en chaîne. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Que faire lorsque php invite Array

Le premier type

Ce genre de scénario est relativement rare, et la plupart d'entre eux sont engagés par les novices, il est également facile de trouver et de résoudre les erreurs. Cela signifie littéralement utiliser le tableau comme chaîne.
Exemple :

$arr = array(0, 1, 2);
//错误1,双引号可以解析变量,但是双引号中,就会认为它是字符串。
var_dump("$arr");
//错误2
echo $arr;

Dans ce cas, le résultat sera renvoyé :

PHP Notice: Array to string conversion in /path/test.php on line 5

La solution est de convertir le tableau en chaîne puis de l'utiliser : par exemple, utilisez json_encode($arr);

Le deuxième type

Ce type de scénario est également relativement rare, et il est difficile de comprendre ce qui n'a pas fonctionné simplement en regardant la conversion Array en chaîne rapide.
Lorsque nous utilisons curl et transmettons des paramètres via 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);

La solution à ce problème est également très simple. Utilisez simplement http_build_query() pour traiter les paramètres. Il est recommandé que lors de l'utilisation de curl, tous les paramètres soient traités avec http_build_query.

curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));

Apprentissage recommandé : Tutoriel vidéo php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer