參考文獻: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