Ausführliche Erläuterung von Beispielen für Pfeilfunktionen in PHP

coldplay.xixi
Freigeben: 2023-04-09 06:28:01
nach vorne
3502 Leute haben es durchsucht

Ausführliche Erläuterung von Beispielen für Pfeilfunktionen in PHPVerwandte Lernempfehlungen:

PHP-Programmierung vom Einstieg bis zur Beherrschung

PHP7.4

Kurzes Beispiel aus Doctrine DBAL

//老办法
$this->existingSchemaPaths = array_filter($paths, function ($v) use ($names) {
    return in_array($v, $names);
});

// 使用箭头函数的新方法
$this->existingSchemaPaths = array_filter($paths, fn($v) => in_array($v, $names));
Nach dem Login kopieren

Schauen wir uns die Regeln an

sind Schlüsselwörter, keine reservierten Funktionsnamen.

Es kann nur einen Ausdruck geben, nämlich die Return-Anweisung.

    erfordert nicht die Verwendung der Schlüsselwörter
  1. und fn.
  2. Variablen, Bereiche und LSB-Bereiche werden automatisch gebunden.
  3. rereturnSie können Hinweisparameter und Rückgabetypen eingeben. use
  4. Sie können sogar Referenzen
  5. und den Spread-Operator $this
  6. Ein paar Beispiele
  7. //作用域示例
    $discount = 5;
    $items = array_map(fn($item) => $item - $discount, $items);
    
    //类型提示
    $users = array_map(fn(User $user): int => $user->id, $users);
    
    //展开操作符
    function complement(callable $f) {
        return fn(...$args) => !$f(...$args);
    }
    
    //嵌套
    $z = 1;
    $fn = fn($x) => fn($y) => $x * $y + $z;
    
    //有效的函数签名
    fn(array $x) => $x;
    fn(): int => $x;
    fn($x = 42) => $x;
    fn(&$x) => $x;
    fn&($x) => $x;
    fn($x, ...$rest) => $rest;
    Nach dem Login kopieren
    &Zukünftiger Geltungsbereich...
  8. <🎜 verwenden >Mehrzeilige Pfeilfunktionen

Ermöglicht die Verwendung von Pfeilfunktionen für Funktionen innerhalb einer Klasse.

//现今
class Test {
    public function method() {
        $fn = fn() =&gt; var_dump($this);
        $fn(); // object(Test)#1 { ... }

        $fn = static fn() =&gt; var_dump($this);
        $fn(); // Error: Using $this when not in object context
    }
}

//也许在未来的某一天
class Test {
    private $foo;
    private $bar;

    fn getFoo() =&gt; $this-&gt;foo;
    fn getBar() =&gt; $this-&gt;bar;
}
Nach dem Login kopieren
Meine Lieblingspunkte

  1. Rückrufe können kürzer sein
  2. Nach Variablen ohne das Schlüsselwort
fragen.

  1. Lassen Sie mich wissen, was Sie von diesen Updates halten und was Ihr Lieblingsessen war?
  2. useDanke fürs Lesen.

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung von Beispielen für Pfeilfunktionen in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:learnku.com
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