刚开始学习php
安装了phpstorm,开始学习linux跟php,调试php需要xdebug。windows上比较简单,用xampp,网上也可以搜到很多方法,设置相对难度低。
现在用deepin桌面版,不懂的太多,安装起xdebug来比较困难,到处找资料。
deepin桌面版没有添加第三方源。apt源里面的php7.2的版本
安装xdebug
去https://xdebug.org/files/下载最新的3月6号的xdebug-2.7.0.tgz;
解压缩
cd xdebug-2.7.0.2
phpize,如果报错,就先apt install php7.2-dev php-dev
./configure --enable-xdebug
make&&make install
正常的就安装完成了
设置php.ini
/etc/php/7.2/cli/php.ini
添加到最后
[xdebug]
zend_extension=/usr/lib/php/20170718/xdebug.so
xdebug.remote_host= 127.0.0.1
xdebug.remote_connect_back = 1
xdebug.remote_port = 9000
systemctl restart php7.2-fpm
php -v
看到
PHP 7.2.4-1+b1 (cli) (built: May 12 2018 13:03:02) ( NTS )
Copyright © 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright © 1998-2018 Zend Technologies
with Xdebug v2.7.0, Copyright © 2002-2019, by Derick Rethans
with Zend OPcache v7.2.4-1+b1, Copyright © 1999-2018, by Zend Technologies
就成功了。
回到phpstorm里面就可以使用debug了。
笔记
折腾了好久,老报错,好不容易能用了,记录一下。
问题
php -i跟phpinfo输出信息不一样。php -i中xdebug已经好了,phpinfo中没有。
原因是两个使用的ini文件不一样。
php -i使用的是ini文件是cli里面的。
phpinfo是fpm的。在fpm里面phpinfo也配置了就一样了