ホームページ > バックエンド開発 > PHPチュートリアル > PHP で use キーワードを使用する 3 つの方法についての簡単な説明

PHP で use キーワードを使用する 3 つの方法についての簡単な説明

青灯夜游
リリース: 2023-04-10 08:22:01
転載
3753 人が閲覧しました

この記事では、PHP での use キーワードの一般的な使用法をいくつか紹介します。一定の参考値があるので、困っている友達が参考になれば幸いです。

PHP で use キーワードを使用する 3 つの方法についての簡単な説明

1. 名前空間のエイリアス参照

// 命名空间
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
ログイン後にコピー

これは日常のエンジニアリングで使用する必要があります。開発では非常に一般的になります。結局のところ、現在のフレームワークはすべて名前空間を使用しているため、何をするにしてもさまざまなクラスの依存関係を呼び出さないと作業ができず、さまざまなコントローラー ファイルの上に use xxx\xxx\xxx; ステートメントが大量に存在します。

2. トレイト機能の紹介

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

class B {
    use A;
}

$b = new B();
$b->testTrait();
ログイン後にコピー

過去 2 年間でも、トレイトが使用されているのをまったく見たことがありません。PHPプログラマーの皆さん、驚かないでください。これは本当です。非常に多くのプロジェクトがまだ TP3 を使用していると考えるのは驚くべきことではありません。トレイト機能も非常に便利なクラス機能拡張モードで、実際にはこれをクラス内に置くと考えるとトレイトの参照定義になります。

3. 匿名関数のパラメータの受け渡し

// 匿名函数传参

$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
ログイン後にコピー

これはちょっと興味深いですね、メソッド内で外部変数を呼び出すには、global が必要です。 use() を通じて変数を直接渡すこともできます。そして、これは匿名関数でのみ使用できます。

テストコード: https://github.com/zhangyue0503/dev-blog/blob/master/php/202001/source/PHP.php のキーワードを使用

推奨される学習: 「PHP ビデオ チュートリアル

以上がPHP で use キーワードを使用する 3 つの方法についての簡単な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:juejin.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート