Maison > Questions et réponses > le corps du texte
P粉9868609502023-08-22 09:46:05
Si vous transmettez un tableau PHP à une fonction qui attend une chaîne, telle que echo
或print
,那么PHP解释器会将你的数组转换为字面字符串Array
, lancez cet avis et continuez l'exécution. Par exemple :
php> print(array(1,2,3)) PHP Notice: Array to string conversion in /usr/local/lib/python2.7/dist-packages/phpsh/phpsh.php(591) : eval()'d code on line 1 Array
Dans ce cas, la fonction print
将字面字符串Array
sort sur stdout, puis enregistre l'avis sur stderr et continue l'exécution.
Autre exemple de script PHP :
<?php $stuff = array(1,2,3); print $stuff; //PHP Notice: Array to string conversion in yourfile on line 3 ?>
$stuff = array(1,2,3); foreach ($stuff as $value) { echo $value, "\n"; }
Sortie :
1 2 3
Ou contient le nom de la clé du tableau :
$stuff = array('name' => 'Joe', 'email' => 'joe@example.com'); foreach ($stuff as $key => $value) { echo "$key: $value\n"; }
Sortie :
name: Joe email: joe@example.com
Notez que les éléments du tableau peuvent également être des tableaux. Dans ce cas, il peut être réutilisé foreach
或使用数组语法访问内部数组元素,例如$row['name']
S'il s'agit simplement d'un tableau unidimensionnel normal, vous pouvez utiliser des délimiteurs pour concaténer toutes les cellules en une chaîne :
<?php $stuff = array(1,2,3); print implode(", ", $stuff); //输出 1, 2, 3 print join(',', $stuff); //输出 1,2,3
Si votre tableau a une structure complexe mais que vous devez quand même le convertir en chaîne, vous pouvez utiliser http://php.net/json_encode
$stuff = array('name' => 'Joe', 'email' => 'joe@example.com'); print json_encode($stuff);
Sortie :
{"name":"Joe","email":"joe@example.com"}
Si vous souhaitez simplement inspecter le contenu du tableau à des fins de débogage, vous pouvez utiliser l'une des fonctions suivantes. Gardez à l'esprit que var_dump est le plus verbeux de tous et est généralement préféré à cette fin
Exemple :
$stuff = array(1,2,3); print_r($stuff); $stuff = array(3,4,5); var_dump($stuff);
Sortie :
Array ( [0] => 1 [1] => 2 [2] => 3 ) array(3) { [0]=> int(3) [1]=> int(4) [2]=> int(5) }
P粉7398862902023-08-22 00:07:45
Quand tu as beaucoup de noms C[]
的HTML输入时,你在POST数组的另一端得到的是这些值的数组$_POST['C']
。所以当你echo
它时,你正在尝试打印一个数组,所以它只会打印Array
et un indice.
Pour imprimer correctement un tableau, vous pouvez effectuer une boucle dessus et echo
每个元素,或者你可以使用print_r
.
De plus, si vous ne savez pas s'il s'agit d'un tableau, d'une chaîne ou autre, vous pouvez utiliser var_dump($var)
et il vous dira de quel type il s'agit et quel est son contenu. À des fins de débogage uniquement.