ThinkPHP5.X快速入门
PHPStorm配置(工欲善其事必先利其器)
1.PHPStorm配置Debug断点调试(PHP的环境搭建)
- 检测本地php环境是否安装了Xdebug 在本地输出phpinfo();(Ctrl+F,搜索Xdebug这样更方便查看;如下图)
- 如果没有安装,安装操作Xdebug如下:
- 将phpinfo();的信息全部输入网址:https://xdebug.org/wizard.php 如下图
# phpinfo文件内包含内容
<?php
phpinfo();
?`>
- 查看info的信息,上图页面查看源码,全选复制粘贴。
- 将phpinfo();的信息全部输入网址:https://xdebug.org/wizard.php (外网访问稍慢) 如下图所示
- 网址:https://xdebug.org/wizard.php
- 反馈的结果如下图
- 安装好Xdebug之后,配置本地的php.ini。添加配置如下,如需添加其他Xdebug配置,红色部分必须发配置,可以查看phpinfo中xdebug配置,根据自身phpinfo()信息情况自己添加。见如下所示。
[XDebug]
xdebug.profiler_output_dir="F:\PHP\myphp_www\PHPTutorial\tmp\xdebug"
xdebug.trace_output_dir="F:\PHP\myphp_www\PHPTutorial\tmp\xdebug"
;这里改为刚刚下载的,放在对应PHP版本下的ext文件下的php_xdebug-2.7.1-7.1-vc14-nts.dll文件,
;可以直接在反馈结果中复制粘贴,这样准确。
zend_extension = C:\SoftwareTools\Server\PhpStudy2018\PHPTutorial\php\php-7.2.1-nts\ext\php_xdebug-2.9.4-7.2-vc15-nts.dll"
xdebug.profiler_append = 0
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_mode = "req"
xdebug.remote_host=127.0.0.1
;xdebug.remote_port默认值为9000,这里需要跟phpstorm配置一致,下面有说明
xdebug.remote_port=9000
- 然后是配置phpstorm,Ctrl+Alt+S快捷键打开设置,搜索xdebug,其中的Debug port确保不被其他应用占用,当程序无法进入断点时,可以考虑是否有其他应用占用了你本地的9000端口。
- 使用,直接点击运行边上的爬虫按钮
- 大功告成!!!
thinkPHP5.0 路由 前后端分离 绑定模块 隐藏入口文件
1.前后端分离
- 在网站public目录下新建admin.php
- 打开admin.php
<?php
// [ 应用入口文件 ]
// 定义应用目录
define('APP_PATH', __DIR__ . '/../application/');
// 加载框架引导文件
require __DIR__ . '/../thinkphp/start.php';
2.绑定模块
- 实现功能
index.php 这个入口文件 只能去前台模块
admin.php 这个入口文件 只能去后台模块 建议后台的入口文件稍微复杂些
- 如何实现
在入口文件中
define('BIND_MODULE','index');//绑定前台模块
define('BIND_MODULE','admin');//绑定后台模块
- url地址
- 入口绑定模块之前
http://www.thinkphp5.com/入口文件/模块/控制器/操作
- 入口绑定模块之后
http://www.thinkphp5.com/入口文件/控制器/操作
3.隐藏入口文件
- 开始apache 的重写 F:\phpStudy\PHPTutorial\Apache\conf\httpd.conf
# 把注释去掉
更改后:LoadModule rewrite_module modules/mod_rewrite.so
- 设置访问权限 AllowOverride none改为All
- 入口文件 ,在网站public目录下新建.htaccess
//phpstudy的第一种写法
<IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>
//第一种方法不好使的话 使用第二种方法
<IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]
</IfModule>
- 重启服务
- url地址变化
- 隐藏之前
http://www.tp5.com/index.php/Index/test
- 隐藏之后
http://www.tp5.com/Index/test