Récupération des données - Page 2
Résolu- 1
- 2
Bonjour je me permet de revenir une fois vers toi, toujours pour le même soucis. Peux tu me dire comment résoudre cette erreur s'il te plait, peut-être que cela va m'aider à solutionner mon problème. je te remercie.
Notice: Array to string conversion in C:
Je crois comprendre que j’essaye d'afficher une chaine de caractère alors que c'est un tableau ?
Merci
Bonjour petit bout de code où j'ai fait les var_dump sur mes 3 variables concernées.
if (!empty($indice) && (is_array($indice) || is_object($indice))) {
echo "la variable indice ne contient pas la bonne valeur ?";
$idnum = 1;
$thisrec = 0;
} else {
$idnum = ($indice/1) ? 0 : 1;
var_dump($indice);
var_dump($champs);
var_dump($idnum);
$thisrec = !empty($donnees->$champs) && is_array($donnees->$champs) && $indice == $donnees->$champs[$idnum] ? 1 : 0 ;
}
Voici le retour.
Notice: Array to string conversion in C:\wamp64\www\gestion\libs\class.liste.php on line 10 C:\wamp64\www\gestion\libs\class.liste.php:7:string '14' (length=2) C:\wamp64\www\gestion\libs\class.liste.php:8: array (size=3) 0 => string 'idaut' (length=5) 1 => string 'nom' (length=3) 2 => string 'prenom' (length=6) C:\wamp64\www\gestion\libs\class.liste.php:9:int 0
Bonjour, j'ai bien pris connaissance du lien en français en ce qui concerne "$donnees->$champs[$idnum]" à propos des accolades /parenthése mais je n'ai pas réussi à résoudre mon problème.
Expression Interprétation PHP 5 Interprétation PHP 7
$$foo['bar']['baz'] ${$foo['bar']['baz']} ($$foo)['bar']['baz']
$foo->$bar['baz'] $foo->{$bar['baz']} ($foo->$bar)['baz']
$foo->$bar['baz']() $foo->{$bar['baz']}() ($foo->$bar)['baz']()
Foo::$bar['baz']() Foo::{$bar['baz']}() (Foo::$bar)['baz']()
non is_array($donnees->$champs) n'était pas dans la version antérieure...
$thisrec = !empty($donnees->$champs) && is_array($donnees->$champs) && $indice == ($donnees->$champs)[$idnum] ? 1 : 0 ;
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionvoici le code de la version antérieure qui fonctionne.
if($indice/1) { $idnum = 0; } else { $idnum = 1; }
if($indice == $donnees->$champs[$idnum]) { $thisrec = 1; } else { $thisrec = 0; }
cela me renvoie une erreur
Parse error: syntax error, unexpected '(', expecting identifier (T_STRING) or variable (T_VARIABLE) or '{' or '$' in C:\wamp64\www\gestion\libs\class.liste.php on line 233
if (!empty($indice) && (is_array($indice) || is_object($indice))) {
echo "la variable indice ne contient pas la bonne valeur ?";
$idnum = 1;
$thisrec = 0;
} else {
$idnum = ($indice/1) ? 0 : 1;
var_dump($indice);
var_dump($champs);
var_dump($idnum);
$thisrec = !empty($donnees->$champs) && is_array($donnees->$champs) && $indice == $donnees->($champs[$idnum]) ? 1 : 0 ;
}
je te remercie
toujours pas de résultat, même avec les accolades.
if (!empty($indice) && (is_array($indice) || is_object($indice))) {
echo "la variable indice ne contient pas la bonne valeur ?";
$idnum = 1;
$thisrec = 0;
} else {
$idnum = ($indice/1) ? 0 : 1;
var_dump($indice);
var_dump($champs);
var_dump($idnum);
$thisrec = !empty($donnees->$champs)
&& is_array($donnees->$champs)
&& $indice ==
$donnees->{$champs[$idnum]} ? 1 : 0 ;
}
toujours la même erreur concerne la ligne 10
Notice: Array to string conversion in C:
- 1
- 2
Il s'agit, en effet, d'un avertissement, qui te prévient que tu essaies de convertir un tableau en une chaîne de caractères.