用phpstorm可以很好的调试php,mac已搭建好php7.1、apache、mysql环境
apache
httpd.conf
apache配置文件httpd.conf(/etc/apache2/httpd.conf),用来更改根目录、端口和php解析
mac自带的apache本身没有开启php解析环境,需要手动打开1
2
3
4
5
6
7
8
9
10
11
12
13
14#路径改成自定的
DocumentRoot "/Library/WebServer/Documents"
#端口
#Listen 12.34.56.78:80
Listen 8080
#Listen 80
Listen 8080
#php
LoadModule php7_module libexec/apache2/libphp7.so
apache启动
apache的启动、重启、停止1sudo apachectl start/restart/stop
php
缺php.ini,找到php.ini.default,copy新建/etc/php.ini
0x01 xdebug
安装pecl
php自带的调试器,现在brew无法直接安装,需要先装pecl1
2
3
4curl -O http://pear.php.net/go-pear.phar
sudo php -d detect_unicode=0 go-pear.phar
#检查是否安装好
pecl version
安装xdebug1$sudo pecl install xdebug
此时报错:
fatal error: ‘php.h’ file not found1
2$xcode-select --install
$sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /n
之后重新安装xdebug即可
在phpinfo中有xdebug即安装和配置成功
配置xdebug
在php.ini添加1
2
3
4
5
6
7
8zend_extension="/usr/local/php/modules/xdebug.so"
xdebug.remote_enable =1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
xdebug.remote_mode = "req"
#调试端口,最好不是9000(nginx)
xdebug.remote_port = 9001
xdebug.idekey="PHPSTORM"
0x02 phpstorm
网站要搭建在apache配置文件指定的目录下
要开启apache服务
配置 PhpStorm
设置php路径
配置监听端口
打开 Preferences->Languages&Frameworks->PHP->Debug,找到 Xdebug 选项,并在 Debug port:中填写9001
增加PHP Web Application,导航Run->Edit Configurations
在代码中设置断点并调试
点击debug和监听按钮
#0x03 thinkphp搭建
源码下载
复现使用thinkphp 5.0.20
找到对应版本再下载
这里似乎用不到composer
think框架
入口文件是./public/index.php1https://github.com/top-think/think/tree/v5.0.20
framework
核心库,在think 目录下下载并重命名为thinkphp[我当时忘记重命名一直找不到库文件,报错500]1https://github.com/top-think/framework/tree/v5.0.20
启动phpstorm
新建工程或者直接打开thinkphp目录,配置好php、server、xdebug、thinkphp的一些参数后访问index.php,可以正常访问网站,之后开始正式调试