Maison > Article > développement back-end > Une brève discussion sur 3 façons d'utiliser le mot-clé use en PHP
Cet article vous présentera quelques utilisations courantes du mot-clé use en PHP. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.
1. Référence d'alias pour l'espace de noms
// 命名空间 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
Ceci doit être utilisé dans l'ingénierie quotidienne. sera très courant dans le développement. Après tout, les frameworks actuels utilisent tous des espaces de noms. Quoi que vous fassiez, vous ne pouvez pas vous passer d'appeler diverses dépendances de classe. Il y aura un grand nombre d'instructions use xxxxxxxxx;
2. Introduction des capacités de trait
// trait trait A{ function testTrait(){ echo 'This is Trait A!', PHP_EOL; } } class B { use A; } $b = new B(); $b->testTrait();
Même au cours des deux dernières années, je n'ai toujours pas vu de traits utilisés du tout. programmeurs, ne soyez pas surpris, c'est réel. Il n’est pas surprenant de penser qu’autant de projets utilisent encore TP3. La fonctionnalité de trait est également un mode d'extension de fonction de classe très pratique. En fait, nous pouvons la considérer comme plaçant cette utilisation dans la classe et elle devient la définition de référence du trait.
3. Passage du paramètre de fonction anonyme
// 匿名函数传参 $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
C'est un peu intéressant pour appeler des variables externes dans la méthode, global est requis ici. nous pouvons également transmettre des variables directement via use(). Et cela ne peut être utilisé que dans des fonctions anonymes.
Code de test : 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
Apprentissage recommandé : "Tutoriel vidéo PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!