站長資訊網
        最全最豐富的資訊網站

        淺談PHP中use關鍵字的3種使用方法

        本篇文章給大家介紹一下use關鍵字在PHP中的種常見用法。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有所幫助。

        淺談PHP中use關鍵字的3種使用方法

        1. 用于命名空間的別名引用

        // 命名空間 include 'namespace/file1.php';  use FILE1objectA; use FILE1objectA as objectB;  echo FILE1CONST_A, PHP_EOL; // 2  $oA = new objectA(); $oA->test(); // FILE1ObjectA  $oB = new objectB(); $oB->test(); // FILE1ObjectA

        這個想必在日常的工程化開發中會非常常見。畢竟現在的框架都是使用了命名空間的,不管做什么都離不開各種類依賴的調用,在各種控制器文件的上方都會有大量的use xxxxxxxxx;語句。

        2. 用于trait特性能力的引入

        // trait trait A{     function testTrait(){         echo 'This is Trait A!', PHP_EOL;     } }  class B {     use A; }  $b = new B(); $b->testTrait();

        即使在最近這兩年,依然還是見過完全沒有用過trait的PHP程序員,不要驚訝,這是真實存在的。想想還有那么多項目都還在用TP3也就不奇怪了。trait特性還是非常方便的一種類功能擴展模式,其實我們可以看作是將這個use放在了類中就成為了trait的引用定義了。

        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/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

        推薦學習:《PHP視頻教程》

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 欧美激情精品久久久久| 日韩精品无码永久免费网站 | 精品视频第一页| 亚洲高清专区日韩精品| 国产亚洲精品AA片在线观看不加载 | 亚洲精品你懂的| 国产日韩精品欧美一区喷水| 人妻少妇精品久久| 国产精品久久久久一区二区三区| 国产成人精品日本亚洲18图| 精品蜜臀久久久久99网站| 亚洲国产精品成人一区| 黄床大片免费30分钟国产精品 | 亚洲高清国产拍精品青青草原| 国产精品白丝jkav网站| 欧美日韩精品一区二区在线播放 | 国产精品亚洲欧美大片在线观看 | 国产精品视频免费| 精品国产一区AV天美传媒| 亚洲精品无码MV在线观看| 久久精品亚洲福利| 精品91自产拍在线观看二区| 国产高清在线精品一区小说| 91亚洲精品自在在线观看| 青青草国产精品久久久久| 国产精品久久久久影院嫩草| 国产亚洲精品美女久久久| 国产在线精品免费aaa片| 久久精品99久久香蕉国产色戒| 亚洲精品色午夜无码专区日韩| 亚洲欧美精品一区久久中文字幕| 午夜精品久久久久成人| 日韩精品无码免费视频| 亚洲无码精品浪潮| 最新国产乱人伦偷精品免费网站 | 午夜精品久久久久久久无码| 久久亚洲精品无码播放| 日本熟妇亚洲欧美精品区| 欧美成人精品一区二三区在线观看| 欧美亚洲另类精品第一页 | 精品午夜久久福利大片|