首頁  >  文章  >  後端開發  >  PHP學習-chapter2之php的特性 chapter one php程式碼學習 學習php要多

PHP學習-chapter2之php的特性 chapter one php程式碼學習 學習php要多

WBOY
WBOY原創
2016-07-29 08:54:111146瀏覽
  • 2.1命名空間:
  • 避免衝突,放在
  • 引用命名空間:use namespace Symphony/Httg 讓
  • 引用命名空間中的某一類:use Oreilly/con as a;
  • 引用命名空間中的函數:use func Oreilly/functionName;
  • 量引用命名空間中的常數:引用空間中的常數CONST_NAME;
  • 多重導入:檔案頭多個use語句
  • 在一個檔案中使用多個命名空間
      • 全局命名空間:沒有命名空間的程式碼,例如php原生的Exception類,前面家訪問可以做到告訴php別再當前命名空間中查找,要到全局空間中查找,$ e = new Exception()
      • 完全限定的php類別名稱:(命名空間+類名)
      • 2.2使用介面
    介面定義:interface2.2使用介面
  • ;
  • public function getContent();
  • }
    • 介面實作public function getId() {
    • return $this->url;
    }
    • 狀trait
    • 使用性狀的原因,兩個類別需要十分相似的功能結構,如果採用繼承的方式實現,則會破壞原本的類別層次結構,如果使用介面實現,則會導致程式碼重複,因此引入性狀
      • 定義性狀:trait MyTrait{
          • //性狀的實現
        • }
      • use MyTrait;
          • }
        • 2.4產生器generator,迭代器
      • 生成器即一個php函數,並使用yield關鍵字,生成器不傳回值,只產出產生器即一個php函數,並使用yield關鍵字,生成器不傳回值,只產出值,只能向前進的迭代器,適用於迭代大型的資料集。
      • 產生器的建立方式:function myGenerator(){
        • yield 'value1';
          • yield 'value1';
          生成器的使用:PHP傳回Generator類別的對象,有利於節省內存,例如需要產生一個10000範圍內的整數,一種方式是在內存中創建10000個整數,而採用生成器迭代,每次只需要佔用一個整數的內存即可。
        • foreach(myGenerator() as $yieldValue){
      • echo $yieldValue;//輸出value1,value2
      • 和匿名函數
        • 閉包:創建時封裝周圍狀態的函數,即使閉包所在的環境不存在了,閉包中封裝的狀態依然存在
          • 匿名函數:沒有名稱的函數,可以付值給變數
        • 閉包和匿名函數其實是對象,屬於Closure類型的實例
      • 2.6創建閉包
      • 只要變數名稱後面有(,php會查找_invoke()方法,沒有閉包之前只能夠php進行具名回呼
      • $numbersPlusOne
      • =
      • array_map
      • (
      • function
      • ($number) { 
      • return
          $number
        • + 1}, [1
            ,
          • 2 print_r($numbersPlusOne); // 輸出
          • -->
          • [2,3,4cg :function
          enclosePerson
        • ($name) {return function ($dousCommand use ($name) { //封裝了name參數
      • return
      • %'sprintsprint
        • return %'sprintsprint; $name, $doCommand); 
          • }; 附加閉包的狀態:$ this->routes[$routePath]
            • = $routeCallback->bindTo($this,CL%物件類型
            2.7字節碼快取Zend OPcache
          • 2.8PHP內建伺服器
        • 2.8PHP內建伺服器
        • 可以設定為php -S 0.0.0.0:4000
          • 伺服器設定:php -S localhost:4000 -c app/config/php.ini
          • 由於內建的伺服器不具有.htaccess框架,使用內建的路由腳本來取代php -S localhost:4000 router.php 以上就介紹了PHP學習-chapter2之php的特性,包含了chapter,php學習的內容,希望對PHP教學有興趣的朋友有幫助。
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn