Heim  >  Artikel  >  Backend-Entwicklung  >  Eine kurze Diskussion über drei Möglichkeiten, das Schlüsselwort use in PHP zu verwenden

Eine kurze Diskussion über drei Möglichkeiten, das Schlüsselwort use in PHP zu verwenden

青灯夜游
青灯夜游nach vorne
2021-06-15 18:15:303730Durchsuche

Dieser Artikel stellt Ihnen einige häufige Verwendungen des Schlüsselworts „use“ in PHP vor. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

Eine kurze Diskussion über drei Möglichkeiten, das Schlüsselwort use in PHP zu verwenden

1. Alias-Referenz für Namespace

// 命名空间
include 'namespace/file1.php';

use FILE1\objectA;
use FILE1\objectA as objectB;

echo FILE1\CONST_A, PHP_EOL; // 2

$oA = new objectA();
$oA->test(); // FILE1\ObjectA

$oB = new objectB();
$oB->test(); // FILE1\ObjectA

Dies muss in der täglichen technischen Entwicklung sehr häufig vorkommen. Schließlich verwenden alle aktuellen Frameworks Namespaces, ohne dass verschiedene Klassenabhängigkeiten aufgerufen werden müssen.

2. Einführung von Trait-Feature-Funktionen

// trait
trait A{
    function testTrait(){
        echo 'This is Trait A!', PHP_EOL;
    }
}

class B {
    use A;
}

$b = new B();
$b->testTrait();

Selbst in den letzten zwei Jahren habe ich noch nie Traits verwendet. Seien Sie nicht überrascht, das ist real. Es überrascht nicht, dass es immer noch so viele Projekte gibt, die TP3 verwenden. Die Merkmalsfunktion ist auch ein sehr praktischer Erweiterungsmodus für Klassenfunktionen. Tatsächlich können wir uns vorstellen, dass diese Verwendung in der Klasse platziert wird und zur Referenzdefinition des Merkmals wird.

3. Anonyme Funktionsparameterübergabe

// 匿名函数传参

$a = 1;
$b = 2;
// function test($fn) use ($a) // arse error: syntax error, unexpected 'use' (T_USE), expecting '{' 
function test($fn)
{
    global $b;
    echo 'test:', $a, '---', $b, PHP_EOL; // test:---2
    $fn(3);
}

test(function ($c) use ($a) {
    echo $a, '---', $b, '---', $c, PHP_EOL;
});
// 1------3

Das ist etwas interessant, um externe Variablen in der Methode aufzurufen. Hier können wir die Variable auch direkt über use() übergeben. Und dies kann nur in anonymen Funktionen verwendet werden.

Testcode: https://github.com/zhangyue0503/dev-blog/blob/master/php/202001/source/use%E5%85%B3%E9%94%AE%E5%AD%97% E5%9C%A8PHP%E4%B8%AD%E7%9A%84%E5%87%A0%E7%A7%8D%E7%94%A8%E6%B3%95.php

Empfohlene Studie:《 PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonEine kurze Diskussion über drei Möglichkeiten, das Schlüsselwort use in PHP zu verwenden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:juejin.cn. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen