Laravel实现autoload方法详解


Posted in PHP onMay 07, 2017

用了一阵Laravel后发现很少有include和require,觉得有点奇怪,思考Laravel是怎么完成文件导入的。

其实Laravel依旧还是用include或者require的,只是都写在一个函数里了。

就像这样:

function autoload($path){
	require_once($path);
}

一般每次导入的PHP文件不只一两个,会有很多,所以要定义一个数组来存储“类和PHP文件的映射关系”,就像这样:

$classmap=[
		'DB'=>'api.php',
		'FileSystem'=>'api.php',
		'Session'=>'api.php'
];

然后,对数组进行遍历,不要再写for循环了,用一个优雅的函数就可以解决。

array_map("autoload",$classmap);

我们来看看真正的Laravel是怎么定义这个数组的,映射文件在\vendor\composer的autoload_classmap.php里

Laravel实现autoload方法详解

PHP 相关文章推荐
PHP4实际应用经验篇(3)
Oct 09 PHP
php switch语句多个值匹配同一代码块的实现
Mar 03 PHP
php按百分比生成缩略图的代码分享
May 10 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十)
Jun 24 PHP
PHP递归复制、移动目录的自定义函数分享
Nov 18 PHP
php禁用函数设置及查看方法详解
Jul 25 PHP
PHP中ajax无刷新上传图片与图片下载功能
Feb 21 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
Aug 28 PHP
Laravel框架实现redis集群的方法分析
Sep 14 PHP
Laravel源码解析之路由的使用和示例详解
Sep 27 PHP
PHP判断是否是微信打开还是浏览器打开的方法
Feb 27 PHP
PHP判断是否微信访问的方法示例
Mar 27 PHP
PHP中include和require的区别实例分析
May 07 #PHP
自制PHP框架之设计模式
May 07 #PHP
自制PHP框架之模型与数据库
May 07 #PHP
自制PHP框架之路由与控制器
May 07 #PHP
PHP-CGI远程代码执行漏洞分析与防范
May 07 #PHP
PHP关键特性之命名空间实例详解
May 06 #PHP
PHP 中使用explode()函数切割字符串为数组的示例
May 06 #PHP
You might like
PHP中图片等比缩放的实例
2013/03/24 PHP
php判断邮箱地址是否存在的方法
2016/02/13 PHP
PHP正则获取页面所有图片地址
2016/03/23 PHP
php框架CodeIgniter主从数据库配置方法分析
2018/05/25 PHP
Yii框架操作cookie与session的方法实例详解
2019/09/04 PHP
php和html的区别点详细总结
2019/09/24 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
2020/02/18 PHP
聊聊 PHP 8 新特性 Attributes
2020/08/19 PHP
jquery 选择器部分整理
2009/10/28 Javascript
jQuery 获取对象 基本选择与层级
2010/05/31 Javascript
JS中confirm,alert,prompt函数区别分析
2011/01/17 Javascript
js防止表单重复提交实现代码
2012/09/05 Javascript
自定义jQuery选项卡插件实例
2013/03/27 Javascript
js检测网络是否具体连接功能的代码
2014/05/23 Javascript
jQuery插件开发详细教程
2014/06/06 Javascript
jQuery学习笔记之入门
2016/12/14 Javascript
easyui combogrid实现本地模糊搜索过滤多列
2017/05/13 Javascript
mui上拉加载更多下拉刷新数据的封装过程
2017/11/03 Javascript
详解element-ui表格中勾选checkbox,高亮当前行
2019/09/02 Javascript
微信小程序可滑动周日历组件使用详解
2019/10/21 Javascript
Vue向后台传数组数据,springboot接收vue传的数组数据实例
2020/11/12 Javascript
Python爬虫实现爬取京东手机页面的图片(实例代码)
2017/11/30 Python
Python使用re模块实现信息筛选的方法
2018/04/29 Python
在matplotlib的图中设置中文标签的方法
2018/12/13 Python
python安装及变量名介绍详解
2020/12/12 Python
HTML5 实战PHP之Web页面表单设计
2011/10/09 HTML / CSS
程序员跳槽必看面试题总结
2013/06/28 面试题
优秀的自荐信要注意哪些
2014/01/03 职场文书
小学生读书感言
2014/02/12 职场文书
上课打牌的检讨书
2014/02/15 职场文书
暑期社会实践感言
2014/02/25 职场文书
社区工作者个人总结
2015/02/28 职场文书
我们的节日重阳节活动总结
2015/03/24 职场文书
幼儿园教师岗位职责
2015/04/02 职场文书
幼儿园食品安全责任书
2015/05/08 职场文书
python实现自动清理文件夹旧文件
2021/05/10 Python