Dépannage "Essayer d'obtenir la propriété d'un non-objet" Erreur en PHP
Lorsque vous essayez de récupérer des données à partir d'un point de terminaison JSON, vous pouvez rencontrez l'erreur « Essayer d'obtenir la propriété d'un non-objet ». Cela se produit lorsque vous essayez d'accéder à une propriété d'une variable qui n'est pas un objet.
Dans le code fourni, vous essayez de récupérer la variable player_name de la réponse JSON. Cependant, la réponse reçue est un tableau contenant un seul objet, pas directement un objet. Cela peut être confirmé par la sortie var_dump que vous avez fournie, qui affiche :
array(1) { [0]=> object(stdClass)#52 {...} }
Pour résoudre cette erreur, vous devez d'abord accéder à l'élément du tableau, qui est un objet, puis accéder à ses attributs. Voici le code corrigé :
$js = file_get_contents('http://api.convoytrucking.net/api.php?api_key=public&show=player&player_name=Mick_Gibson'); $pjs = json_decode($js); echo $pjs[0]->player_name; // Correctly access the object attribute
Ce code modifié récupère avec succès la variable player_name sans l'erreur "Essayer d'obtenir la propriété d'un non-objet". N'oubliez pas de vérifier attentivement la structure de votre réponse JSON pour vous assurer que vous accédez correctement aux propriétés.
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!