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

Warum gibt PHP den Fehler „Funktionsrückgabewert kann im Schreibkontext nicht verwendet werden' aus und wie kann ich ihn beheben?

Linda Hamilton
Freigeben: 2024-11-24 01:22:10
Original
721 Leute haben es durchsucht

Why Does PHP Throw a

PHP-Fehlerbehandlung: Entschlüsselung des Rätsels „Funktionsrückgabewert kann nicht im Schreibkontext verwendet werden“

Die rätselhafte Fehlermeldung „Schwerwiegender Fehler „: Funktionsrückgabewert kann nicht im Schreibkontext verwendet werden“ kann rätselhaft sein, insbesondere wenn es sich um eine Zeile handelt, die relativ einfach erscheint. Um diesen Fehler zu entschlüsseln, schauen wir uns den Kontext und den Code an, der das Problem verursacht.

Die Fehlermeldung weist darauf hin, dass versucht wurde, einer Variablen innerhalb einer if-Anweisung in Zeile 48 einen Funktionsrückgabewert zuzuweisen. Allerdings In PHP können Funktionsrückgabewerte nicht direkt in einem Schreibkontext verwendet werden, beispielsweise in einer Zuweisungsanweisung. Die betroffene Zeile „if (isset($_POST('sms_code') == TRUE ) {“ veranschaulicht diesen Fehler. Zeile 48 versucht, das Ergebnis der Funktion isset(), die einen booleschen Wert zurückgibt, einer Variablen zuzuweisen.

Um dieses Problem zu beheben, kann der Code geändert werden, um das Ergebnis einer Variablen zuzuweisen und diese Variable dann in der if-Bedingung zu verwenden. Beispielsweise wird die folgende Änderung durchgeführt Arbeit:

$isset_result = isset($_POST('sms_code'));
if ($isset_result == TRUE) {
Nach dem Login kopieren

Alternativ kann ein ternärer Operator verwendet werden, um den Code zu vereinfachen:

$state = $isset_result ? CORRECT_CODE : NOTHING_SUBMITED;
Nach dem Login kopieren

Darüber hinaus sollte empty(), wie in der bereitgestellten Antwort erwähnt, nur mit verwendet werden Variablen und keine Funktionsrückgabewerte. In Fällen, in denen empty() mit Funktionsrückgabewerten verwendet werden soll, kann stattdessen die Funktion trim() verwendet werden Beispiel:

!empty(trim($someText)) ? doSomething() : doSomethingElse(); 
Nach dem Login kopieren

Durch die Behebung dieser Probleme funktioniert der Code wie erwartet und der Fehler „Funktionsrückgabewert kann im Schreibkontext nicht verwendet werden“ tritt nicht mehr auf.

Das obige ist der detaillierte Inhalt vonWarum gibt PHP den Fehler „Funktionsrückgabewert kann im Schreibkontext nicht verwendet werden' aus und wie kann ich ihn beheben?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage