我正在尝试让 xdebug 在 PHP 7 上工作。我正在从版本http://xdebug.org/files/xdebug-2.4.0rc4.tgz构建 xdebug.so 文件。phpize 输出看起来正确(Zend Extension Api No: 320151012
)但是我Xdebug requires Zend Engine API version 220121212.
从 PHP 中得到。
所以我遵循了这些说明:
量身定制的安装说明
概括
Xdebug 已安装:无服务器 API:Apache 2.0 处理程序 Windows:无 Zend 服务器:无 PHP 版本:7.0.9-1 Zend API 编号:320151012 PHP API 编号:20151012 调试构建:无线程安全构建:无配置文件路径:/etc /php/7.0/apache2 配置文件:/etc/php/7.0/apache2/php.ini 扩展目录:/usr/lib/php/20151012 使用说明
下载 xdebug-2.4.1.tgz 解压下载的文件 tar -xvzf xdebug-2.4.1.tgz 运行: cd xdebug-2.4.1 运行: phpize (如果没有phpize,请参阅FAQ。
作为其输出的一部分,它应该显示:
配置为: ... Zend Module Api No: 20151012 Zend Extension Api No: 320151012 如果没有,您使用了错误的 phpize。请按照此常见问题解答条目并跳过下一步。
运行:./configure 运行:make 运行:cp modules/xdebug.so /usr/lib/php/20151012 编辑 /etc/php/7.0/apache2/php.ini 并添加行 zend_extension = /usr/lib/php/ 20151012/xdebug.so 重启网络服务器
除了我安装了 php7.0-dev 而不是 php5 apt-get install -y php7.0-dev
。
当我运行phpize
命令时,我得到以下输出:
配置:
PHP API 版本:20151012
Zend 模块 API 编号:20151012
Zend 扩展 API 编号:320151012
正如预期的那样。但是,当我运行 PHP 时,我得到:
Xdebug 需要 Zend Engine API 版本 220121212。
安装的 Zend Engine API 版本 320151012 较新。
在http://xdebug.org/docs/faq#api联系 Derick Rethans 以获取更高版本的 Xdebug。
我显然在某个地方做错了什么!非常感谢您对调试问题的任何帮助!:)