PHP7 学习笔记(四)PHP PSR-4 Autoloader 自动加载
参考文献:
1、PHP PSR-4 Autoloader 自动加载(中文版)
基本步骤:
(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 Openresty\LuaRedis; 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 AliyunMNS\Config; class Web
{
public function aliyun()
{
$config = new Config();
var_dump($config);
}
}
5、访问结果,表示成功
object(AliyunMNS\Config)[]
private 'proxy' => null
private 'connectTimeout' => int
private 'requestTimeout' => int
private 'expectContinue' => boolean false
PHP7 学习笔记(四)PHP PSR-4 Autoloader 自动加载的更多相关文章
- Android 学习笔记之Volley(七)实现Json数据加载和解析...
学习内容: 1.使用Volley实现异步加载Json数据... Volley的第二大请求就是通过发送请求异步实现Json数据信息的加载,加载Json数据有两种方式,一种是通过获取Json对象,然后 ...
- Redis深入学习笔记(一)Redis启动数据加载流程
这两年使用Redis从单节点到主备,从主备到一主多从,再到现在使用集群,碰到很多坑,所以决定深入学习下Redis工作原理并予以记录. 本系列主要记录了Redis工作原理的一些要点,当然配置搭建和使用这 ...
- webpack学习笔记—优化缓存、合并、懒加载等
除了前面的webpack基本配置,还可以进一步添加配置,优化合并文件,加快编译速度.下面是生产环境配置文件webpack.production.js,与wenbpack.config.js相比其不需要 ...
- PHP PSR-4 Autoloader 自动加载(中文版)
Autoloader 关键词 “必须”("MUST").“一定不可/一定不能”("MUST NOT").“需要”("REQUIRED"). ...
- Android学习笔记之BitmapFactory.Options实现图片资源的加载...
PS:小项目总算是做完了...历经20多天...素材,设计,以及实现全由自己完成...心力憔悴啊...该写写博客记录一下学习到的东西了... 学习内容: 1.使用BitmapFactory.Optio ...
- ES6学习笔记(二十)Module 的加载实现
上一章介绍了模块的语法,本章介绍如何在浏览器和 Node 之中加载 ES6 模块,以及实际开发中经常遇到的一些问题(比如循环加载). 1.浏览器加载 传统方法 HTML 网页中,浏览器通过<sc ...
- Windows调试学习笔记:(一)WinDBG中加载SOS和CLR
最近产品环境出现了部分服务器当机情况,虽然重启之后问题就不出现了.但本着彻底解决问题的态度,想要找到root cause.多次尝试Visual Studio失败(可能是代码惊醒了优化和签名)之后,决定 ...
- AntDesign vue学习笔记(五)导航菜单动态加载
一般的后台系统都有一个树形导航菜单,具体实现如下,主要参考https://my.oschina.net/u/4131669/blog/3048416 "menuList": [ { ...
- PHP自动加载SPL的四种处理方式
libs目录下有3个类文件: Test.class.php <?php class Test { public function __construct() { echo "Loadi ...
随机推荐
- XMLHttpRequest详解
XMLHttpRequest详解: https://xhr.spec.whatwg.org/
- 安裝CentOS7后修復win7引导
想尝试双系统的心情想必大家都能理解,但是安装了双系统之后的收尾工作也是必不可少的,由于对Linux并不算很熟悉,所以在这方面花了不少时间,这里将CentOS7下修復windows7引导的解决方案记录下 ...
- 彻底弄懂jsonp原理及实现方法
一. 同源策略 所有支持Javascript的浏览器都会使用同源策略这个安全策略.看看百度的解释: 同源策略,它是由Netscape提出的一个著名的安全策略. 现在所有支持JavaScript 的浏览 ...
- node.js依赖express解析post请求四种数据格式()
分别是这四种: www-form-urlencoded, form-data, application/json, text/xml www-form-urlencoded 这是http的post请求 ...
- Spring AOP切点表达式用法总结
1. 简介 面向对象编程,也称为OOP(即Object Oriented Programming)最大的优点在于能够将业务模块进行封装,从而达到功能复用的目的.通过面向对象编程,不同的模 ...
- CSS变形transform(2d)
前面的话 CSS变形transform是一些效果的集合,主要是移动.旋转.缩放和倾斜这四种基本操作,还可以通过设置matrix矩阵来实现更复杂的效果.变形transform可以实现2D和3D两种效果. ...
- 写给正在入坑linux系统的伙伴
光阴似箭,时光如梭,转年出来工作已经3年了.从一个职场新人慢慢熟悉职场的工作方式,适应职场工作的环境,学习了很多知识,也总结了很多经验.现在的目标就是一步一个脚印,慢慢打磨自己,希望早日成为取代其他人 ...
- Linux共享库LD_LIBRARY_PATH与ld.so.conf
1. 往/lib和/usr/lib里面加东西,是不用修改/etc/ld.so.conf的,但是完了之后要调一下ldconfig,不然这个library会找不到 2. 想往上面两个目录以外加东西的时候, ...
- MVC DropDownList
最近发现一个 MVC中绑定前台DropDownList , 并且设置默认选中项的简单方法. 直接上代码 方案一 Action: ViewData["goodsTypeList"] ...
- P2707 Facer帮父亲
题目背景 Facer可是一个孝顺的孩纸呦 题目描述 Facer的父亲是一名经理,现在总是垂头丧气的. Facer问父亲,怎么啦?父亲说,公司出了点问题啊. 公司管理着N个风景点,每个风景点都有不少人来 ...