zoukankan      html  css  js  c++  java
  • PHP7 学习笔记(四)PHP PSR-4 Autoloader 自动加载

    参考文献:

    1、PHP PSR-4 Autoloader 自动加载(中文版)

    2、PHP编码规范(中文版)导读

    3、PHP-PSR-[0-4]代码规范

    基本步骤:

    (1)在vendor 下新建一个项目

    (2)修改composer.json

    (3)使用这个命令会自动生成autoload的文件:composer dump-autoload

    (4)use 该类引入既可以了

    一、简单的案例:

    1、新建一个类LuaRedis.php,同时使用命名空间:Openresty

     

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

    2、编辑composer.json 配置加载目录和空间名

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

    其中"Openresty\": "vendor/phplua"表示,将Openresty这个空间名绑定到"vendor/phplua"这个目录下

    3、使用“composer dump-autoload”这个命令会自动生成autoload的文件

    4、如何在项目中使用该类

    use OpenrestyLuaRedis;
    
    class Web 
    {
        /**
         * PSR4 自动载入测试
         */
        public function lua(){
            LuaRedis::getView();
        }
    }

    5、浏览器访问测试是否自动载入成功,出现以下界面表示自动加载成功

     二、引入一个支付宝的SDK

    1、下载SDK文件已经目录结构

    2、编辑composer.json

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

    3、使用“composer dump-autoload”这个命令会自动生成autoload的文件

    4、如何在项目中使用该类

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

    5、访问结果,表示成功

    object(AliyunMNSConfig)[3]
      private 'proxy' => null
      private 'connectTimeout' => int 3
      private 'requestTimeout' => int 35
      private 'expectContinue' => boolean false
  • 相关阅读:
    python之字符串【str】
    python之列表【list】
    python之os模块
    MySQL 模糊查询
    Dreamoon-Operating on a graph(并查集+链表)
    Dreamoon-Operation Love(凸包)
    CF1382D.Unmerge(背包)
    PAT-T1027 Larry and Inversions (树状数组)
    CF1379C.Choosing Flowers(二分)
    矩阵快速幂模板
  • 原文地址:https://www.cnblogs.com/tinywan/p/7469050.html
Copyright © 2011-2022 走看看