ThinkPHP5框架修改——添加自己的类库
说明:博主最近的项目,需要实现数据分页。但thinkphp自带的分页不想用。想把我之前自己
写的分页类加以使用。所以看了一下扩展类库的功能。既然工作完成了,想分享出来,一来自己做
笔记,二来给有需要学习的朋友一个方便。
1,thinkPHP运行流程
从tp5/public/index.php入口文件进入,通过加载框架引导文件/tp5/thinkphp/start.php
进行初始化常量,注册各种需要的机制,加载配置文件。准备完成后即可通过
/tp5/thinkphp/library/think/App.php类run()方法执行。
//这里只是概览一遍,具体细节可自行阅读thinkphp
2,准备工作
对框架进行修改,切忌修改核心代码。一般方法是在特定目录下进行修改,调用。
ThinkPHP提供了需要引入其他修改的特定目录 tp5/extend;(当然也可以在入口文件重新定义
EXTEND_PATH)来自定义修改目录。建议能不修改不要修改。
3,示例
具体需求:给thinkphp引入自定义的分页类Pagination.php。然后调用分页类进行业务代码的编写。
方法1:利用命名空间自动加载
类文件放置目录:tp5/extend/page/admin/Pagination.php
根据目录,给类文件绑定命名空间(psr-4规则):
<?php
namespace page\admin;
class pagination
{
………………………………
}
以上用通俗的话来说,就是自动加载扩展类库,需要使用命名空间,并且命名空间要和目录对应。
根目录是extend目录下开始的目录名。
调用
$page = new page\admin\pagination();
或者
use page\admin\pagination;
$page = new pagination();
方法2:不利用命名空间
如果类文件没有命名空间,则无法自动加载。必须使用Loader类进行手动加载
use \think\Loader;
Loader::import('page.admin.pagination');
$page = new pagination();
来源:CSDN
作者:敦煌的驼铃
链接:https://blog.csdn.net/SiuKong_Ngau/article/details/79077150