我在Windows 8.1上使用PHP 5.3.24,我无法让Xdebug工作。 var_dump()没有被美化,也没有显示错误消息。 Xdebug模块正在加载(php -i和php -m都报告模块已加载,并且它在phpinfo()中正确显示),我在php.ini中有html_errors = On
这就是我在php.ini中所拥有的:
[XDEBUG]
; location of my configuration-file
zend_extension="php_xdebug-2.2.6-5.3-vc9-nts.dll"
xdebug.default_enable = on
html_errors = on
我试过从zend_extension文件名的arround中删除引号;我尝试过不同的.dll(我知道线程安全版本是错误的,不起作用,同样是64位版本);我已经检查了.dll本身的权限,我已经尝试了我能想到的一切!
看起来dll正在加载但工作不正常,是否有人知道Windows 8.1和Xdebug是否存在特定问题 - 我之前在Windows XP上使用Xdebug没有任何问题。或者我在这里遗漏了什么?
感谢。
答案 0 :(得分:0)
说var_dump()没有被美化,建议您编辑PHP cli安装的php.ini,但是你想要在你的PHP CGI安装中(对于web应用程序) 使用phpinfo()创建一个php脚本并在浏览器中运行它。 寻找:
然后使用此wizard验证安装
答案 1 :(得分:0)
目前,Xdebug仅在php 7.2之前有效。 (请仅使用uptil Xdebug 2.6,因为更高版本的调试存在一些问题)。因此,如果您安装了其他任何版本(例如php 7.3或7.4),那么您还必须在当前php版本的旁边安装php 7.2(主要是因为默认情况下,最新版本是通过apt安装的)。然后在替代方案之间进行更新。
以下给出的答案适用于基于linux的系统;但是在Windows中,您必须使用相同的概念。即使用cmd(以管理员身份运行)而不是shell。例如重新启动apache等。
要将PHP 7.0设置为默认值,请运行
update-alternatives --set php /usr/bin/php7.0
要将PHP 7.2设置为默认值,请运行
update-alternatives --set php /usr/bin/php7.2
要将PHP 7.3设置为默认值,请运行
update-alternatives --set php /usr/bin/php7.3
要将PHP 7.4设置为默认值,请运行
update-alternatives --set php /usr/bin/php7.4
在将Apache配置为使用PHP 7.2之前,我们需要通过键入禁用新(或旧)版本的PHP
a2dismod php7.4
现在使用以下命令启用新安装的PHP 7.2版本:
a2enmod php7.2
重新启动Apache Web服务器以使更改生效:
对于Linux
sudo systemctl restart apache2