Heim >Backend-Entwicklung >PHP-Tutorial >Warum erhalte ich beim Zugriff auf JSON-Daten die Fehlermeldung „Hinweis: Es wird versucht, die Eigenschaft eines Nichtobjekts abzurufen'?

Warum erhalte ich beim Zugriff auf JSON-Daten die Fehlermeldung „Hinweis: Es wird versucht, die Eigenschaft eines Nichtobjekts abzurufen'?

Linda Hamilton
Linda HamiltonOriginal
2024-10-31 03:35:01549Durchsuche

Why Am I Getting the

Verstehen des Fehlers „Hinweis: Es wird versucht, die Eigenschaft eines Nicht-Objekts abzurufen“

In Ihrem Code versuchen Sie, das abzurufen Wert der Eigenschaft „player_name“ aus der Variablen „$pjs“, bei der es sich um ein JSON-dekodiertes Objekt handelt. Die Fehlermeldung weist jedoch darauf hin, dass Sie versuchen, auf eine Eigenschaft eines Nicht-Objekts zuzugreifen.

Analysieren des Problems

Sehen Sie sich die var_dump-Ausgabe von $pjs an , können Sie sehen, dass es sich um ein Array handelt, das ein einzelnes Objekt enthält. Um auf die Eigenschaften des Objekts zuzugreifen, müssen Sie zuerst auf das Array-Element zugreifen.

Problem lösen

Um den Fehler zu beheben, können Sie den folgenden geänderten Code verwenden:

$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;

Durch Zugriff auf das Array-Element bei Index 0 können Sie auf das Objekt zugreifen und den Wert der Eigenschaft „player_name“ abrufen.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich beim Zugriff auf JSON-Daten die Fehlermeldung „Hinweis: Es wird versucht, die Eigenschaft eines Nichtobjekts abzurufen'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn