
thinkphp5 框架原理与实战 读书笔记
本宝宝不开心
本宝宝不开心,造轮子和夯实基础中
展开
-
2.5.1 compser的项目依赖管理
composer依赖管理安装topthink/think-helper助手包的使用网站根目录下执行composer require topthink/think-helper=~1.0打开vendor/topthink/think-helper/composer.json,找到命名空间的配置student.php<?phpuse think\helper\Time;public function test(){ var_dump(Time::today());}卸载原创 2020-12-17 14:34:20 · 165 阅读 · 0 评论 -
2.5 composer
composerComposer的作用不仅仅是安装一个框架,它能实现类的自动加载、项目依赖管理,以及创建自己的包,虽然php提供了自动加载机制,但是自动加载功能需要手动设置才能实现,操作相对复杂,so可以使用composer来解放生产力。在mytp.test网站根目录下,创建composer.json文件composer.json{ "autoload":{ "psr-4":{"app\\": "application/"} }}上述代码中,autoload表示使用自动加载,psr-4原创 2020-12-17 14:15:24 · 246 阅读 · 0 评论 -
2.4 自动加载
自动加载虽然命名空间可以解决命名冲突的问题,但是每次导入时,需要require、include等来手动包含类的相关文件。为解决该问题,php提供了一种自动加载机制,可根据需要自动加载对应的文件。注册自动加载函数__autoload()函数的使用(php7.2起报废)autoload1.php<?phpuse mytp\Container;function __autoload($classname){ $filename = substr($classname,strrp原创 2020-12-17 11:23:22 · 108 阅读 · 0 评论 -
2.3.1导入命名空间
导入命名空间Student.phpContainer.phpnamespace04.phpfunction.php (php5.6以后可以导入函数和常量)namespace05.phpStudent.php<?phpnamespace app\index\controller;class Student{ public static function introduece() { return __CLASS__; }}Container.php<?ph原创 2020-12-16 11:06:13 · 156 阅读 · 0 评论 -
2.3 命名空间
命名空间命名空间是一种解决项目中的各种类库之间命名冲突的方案,类似于在磁盘中划分一层层的目录,将不同的软件安装到不同的目录,从而避免文件重名的情况。命名空间namespace01.phpnamespace02.php非限定名称访问限定名称访问完全限定名称访问定义<?phpnamespace app;...定义子命名空间namespace app\index\controller...index是app的子空间,controller是index的子空间,so在创原创 2020-12-16 10:38:27 · 280 阅读 · 0 评论 -
2.2 隐藏入口文件和简单路由功能实现
创建application目录将student目录放入application目录下public目录下建立.htaccess如下图所示:index.php<?php$pathinfo = isset($_SERVER['PATHINFO']) ? $_SERVER['PATH_INFO'] : $_SERVER['REDIRECT_URI']; //这个地方得改,天坑,隐藏index.php之后会请求student/student/index会导致$_SERVER['PATHINFO'.原创 2020-12-15 16:33:47 · 301 阅读 · 1 评论 -
2.1 MVC简单实现-路由规则
$_SERVER[‘PATH_INFO’]public创建student目录,在student目录下创建model、controller、view目录以前的目录:现在的目录:$_SERVER[‘PATH_INFO’]的使用index.php<?php$pathinfo = isset($_SERVER['PATH_INFO']) ? $_SERVER['PATH_INFO'] : ''; //Apache独有全局变量,nginx的另算echo $pathinfo;访问效果如下.原创 2020-12-15 10:45:01 · 147 阅读 · 0 评论 -
2.MVC简单实现
MVCStudentModel.phpStudentController.phpstudent.htmlindex.phpMVC中M(modle)表示数据处理,V(View)表示视图,C(Contorller)表示控制器,用户发起请求,数据将传递给控制器,控制器给模型进行数据处理,最终将数据传递给控制器,控制器调用视图,呈现出html返回给用户千遍万遍不如手写一遍StudentModel.php<?phpClass StudentModel{ protected $lin.原创 2020-12-14 20:34:49 · 179 阅读 · 0 评论 -
1. composer安装、基本路由请求和think\Db类的简单使用
准备安装thinkphp 5.1.xcomposer安装修改vhost.conf配置文件,将public目录部署为网站根目录1.访问\application\index\controller\Index.php熟悉下路由,不然都不知道thinkphp是如何访问的访问网站访问网站对应的目录文件关系如下:index.php:入口文件index.php\index的末尾index对应\application\index\controller\Index.php的indexindex.p原创 2020-12-14 15:46:53 · 426 阅读 · 0 评论