PHP7 學習筆記(四)PHP PSR-4 Autoloader 自動加載

參考文獻:php

一、PHP PSR-4 Autoloader 自動加載(中文版)html

二、PHP編碼規範(中文版)導讀git

三、PHP-PSR-[0-4]代碼規範github

基本步驟:json

(1)在vendor 下新建一個項目segmentfault

(2)修改composer.json瀏覽器

(3)使用這個命令會自動生成autoload的文件:composer dump-autoloadcomposer

(4)use 該類引入既能夠了測試

1、簡單的案例:編碼

一、新建一個類LuaRedis.php,同時使用命名空間:Openresty

 

<?php namespace Openresty; class LuaRedis { public static function getView() { echo "NameSpace = ".__NAMESPACE__."<br/> ClassName = ".__CLASS__."<br/> Method = ".__METHOD__; } }

二、編輯composer.json 配置加載目錄和空間名

    "autoload": { "psr-4": { "Openresty\\": "vendor/phplua" } },

其中"Openresty\\": "vendor/phplua"表示,將Openresty這個空間名綁定到"vendor/phplua"這個目錄下

三、使用「composer dump-autoload」這個命令會自動生成autoload的文件

四、如何在項目中使用該類

use Openresty\LuaRedis; class Web { /** * PSR4 自動載入測試 */
    public function lua(){ LuaRedis::getView(); } }

五、瀏覽器訪問測試是否自動載入成功,出現如下界面表示自動加載成功

 2、引入一個支付寶的SDK

一、下載SDK文件已經目錄結構

二、編輯composer.json

    "autoload": { "psr-4": { "Openresty\\": "vendor/phplua", "AliyunMNS\\": "vendor/aliyun/AliyunMNS" } },

三、使用「composer dump-autoload」這個命令會自動生成autoload的文件

四、如何在項目中使用該類

use AliyunMNS\Config; class Web { public function aliyun() { $config = new Config(); var_dump($config); } }

五、訪問結果,表示成功

object(AliyunMNS\Config)[3] private 'proxy' => null
  private 'connectTimeout' => int 3
  private 'requestTimeout' => int 35
  private 'expectContinue' => boolean false
相關文章
相關標籤/搜索