Heim > Backend-Entwicklung > PHP-Tutorial > Warum gibt PHP den Fehler „Funktionsrückgabewert kann im Schreibkontext nicht verwendet werden' aus?

Warum gibt PHP den Fehler „Funktionsrückgabewert kann im Schreibkontext nicht verwendet werden' aus?

DDD
Freigeben: 2024-11-23 16:30:17
Original
544 Leute haben es durchsucht

Why Does PHP Throw a

PHP-Fehleranalyse: „Funktionsrückgabewert kann im Schreibkontext nicht verwendet werden“ verstehen

Die Fehlermeldung „Funktionsrückgabewert kann im Schreibkontext nicht verwendet werden“ zeigt an, dass PHP den Rückgabewert einer Funktion nicht einer Variablen zuweisen oder in eine Datei schreiben kann. Dieser Fehler tritt häufig auf, wenn versucht wird, die Rückgabe einer Funktion direkt in einer bedingten Anweisung auszuwerten.

Im bereitgestellten Beispiel:

Der Fehler erscheint in Zeile 48, die lautet:

if (isset($_POST('sms_code') == TRUE ) {...}
Nach dem Login kopieren

Hier versucht PHP, die Richtigkeit von isset($_POST('sms_code')) und zu bewerten Weisen Sie das Ergebnis auf TRUE zu. Allerdings ist isset() ein Sprachkonstrukt und keine Funktion, und sein Rückgabewert kann in diesem Kontext nicht verwendet werden.

Lösung:

Um diesen Fehler zu beheben, Weisen Sie den Rückgabewert von isset() direkt einer booleschen Variablen zu:

$sms_code_exists = isset($_POST('sms_code'));

if ($sms_code_exists) {...}
Nach dem Login kopieren

Zusätzlich Hinweis:

Dieser Fehler kann auch auftreten, wenn das leere Sprachkonstrukt für einen Funktionsrückgabewert verwendet wird. Zum Beispiel:

!empty(trim($someText)) and doSomething()
Nach dem Login kopieren

In solchen Fällen ist es richtig, den Rückgabewert von trim() mit dem Vergleichsoperator auszuwerten:

trim($someText) !== '' and doSomething()
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWarum gibt PHP den Fehler „Funktionsrückgabewert kann im Schreibkontext nicht verwendet werden' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage