Je suis confus au sujet d'une erreur que je reçois en déclarant Array to string conversion
La raison pour laquelle je suis confus est que j'essaie de faire exactement cela, de convertir un tableau en chaîne, en utilisant implode
qui, selon le manuel, devrait me permettre de convertir mon tableau en chaîne. Alors pourquoi ai-je une erreur?
var $matches
est un tableau. $error_c
est le var que je veux stocker la chaîne.
print_r($matches); // prints the array correctly
$error_c = implode(',', $matches);
echo $error_c;
Affiche simplement array
et donne:
Notice: Array to string conversion in ...
Le manuel indique que implode — Join array elements with a string
alors pourquoi ai-je une erreur lorsque j'essaye de le faire?
Edit: c'est la sortie que j'obtiens de $matches
Array ( [0] => Array ( [0] => C [1] => E [2] => R [3] => R [4] => O [5] => R [6] => C [7] => O [8] => N [9] => T [10] => A [11] => C [12] => T [13] => S [14] => U [15] => P [16] => P [17] => R [18] => E [19] => S [20] => S [21] => E [22] => D ) )
Vous avez un tableau de tableaux ... Essayez ceci:
$error_c = implode(',', $matches[0]);
$error_c = implode(',', $matches[0]);
echo $error_c;
parce que votre array
contient arrays
à l'intérieur
Faites ça:
print_r($matches); // prints the array correctly
$error_c = implode(',', $matches[0]);
echo $error_c;
Vous pouvez utiliser array_values()
pour un tableau de tableaux
par exemple. implode (",", array_values($array))
Pour simplement mettre toutes les données du tableau dans une chaîne, essayez ceci
function whatever_to_string($in){
ob_start();
print_r($in);
return ob_get_clean();
}
Les fonctions 'ob_ *' contrôlent le tampon de sortie.