Une brève discussion sur 3 façons d'utiliser le mot-clé use en PHP

青灯夜游
Libérer: 2023-04-10 08:22:01
avant
3742 Les gens l'ont consulté

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.

Une brève discussion sur 3 façons d'utiliser le mot-clé use en PHP

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
Copier après la connexion

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();
Copier après la connexion

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
Copier après la connexion

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!

Étiquettes associées:
source:juejin.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal