Wie überschreibe ich Standardfunktionsargumente in PHP?

DDD
Freigeben: 2024-11-02 10:55:31
Original
728 Leute haben es durchsucht

How to Override Default Function Arguments in PHP?

Standard-Funktionsargumente überschreiben

Beim Deklarieren von PHP-Funktionen mit Standardargumenten ist es wichtig zu verstehen, wie diese Werte überschrieben werden, während weiterhin die Standardwerte verwendet werden Argument für andere. Betrachten Sie die folgende Funktion:

<code class="php">function foo($blah, $x = "some value", $y = "some other value") {
    // code here!
}</code>
Nach dem Login kopieren

Um das Standardargument für $x zu verwenden und gleichzeitig einen anderen Wert für $y festzulegen, funktionieren die folgenden falschen Versuche nicht:

<code class="php">foo("blah", null, "test");
foo("blah", "", "test");</code>
Nach dem Login kopieren

Wie sie Weisen Sie $x nicht den gewünschten Standardwert zu. Darüber hinaus führt der Versuch, das Argument über den Variablennamen festzulegen:

<code class="php">foo("blah", $x, $y = "test");</code>
Nach dem Login kopieren

nicht zum erwarteten Ergebnis.

Um das gewünschte Verhalten zu erzielen, sollten Sie die Funktionsdeklaration wie folgt ändern:

<code class="php">function foo($blah, $x = null, $y = null) {
    if (null === $x) {
        $x = "some value";
    }

    if (null === $y) {
        $y = "some other value";
    }

    // code here!
}</code>
Nach dem Login kopieren

Jetzt ist es möglich, die Funktion mit Variationen wie den folgenden aufzurufen:

<code class="php">foo('blah', null, 'non-default y value');</code>
Nach dem Login kopieren

und $x auf den Standardwert setzen zu lassen, während $y überschrieben wird.

Das ist es Es ist wichtig zu beachten, dass Standardparameter nur für die letzten Argumente in der Funktionsdefinition gelten. Wenn dem optionalen Parameter mit dem Standardwert mehrere Parameter folgen, ist es nicht möglich, einen wegzulassen und den folgenden anzugeben.

Das obige ist der detaillierte Inhalt vonWie überschreibe ich Standardfunktionsargumente in PHP?. 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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!