php 断点调试工具配置之故障排除

故障排除

本节介绍了对调试器和相关文件进行故障排除时所需的过程和技术。

查找正确的 php.ini 文件

在配置 PHP 以使用调试器扩展时 — XDebug 或 Zend Debugger — 需要确保您编辑的是正确的 php.ini 文件并且具有正确的调试器变量zend_extension。要查找 PHP 安装使用的 php.ini 文件的完整路径,使用 Web 目录下一个简单脚本中的phpinfo()函数。


清单 10. 简单的 phpinfo.php 基本

                    
<?php
    phpinfo();
?>

 

另一种办法是输入命令php -i | grep "Loaded Conf",您将获得类似Loaded Configuration File => /usr/local/php5/lib/php.ini的结果。

 

使用正确的zend_extension指令

确定了需要编辑的 php.ini 文件之后,现在需要获得正确的zend_extension指令进行安装。再次使用phpinfo()php -i方法查找两个值:Thread SafetyDebug Build。表 1 可以帮助您确定使用哪一个。一个常见的错误是在需要使用zend_exention_ts的时候使用了zend_extension,并且这个错误很难发现。


表 1. 选择正确的配置键

键名线程安全性调试
zend_extension关闭关闭
zend_extension_ts开启关闭
zend_extension_debug关闭开启
zend_extension_debug_ts开启开启
 

调试器没有停止

如果调试器根本没有停止,有可能出现了以下三个问题中的一个:

  • 第一个问题是没有正确设置扩展模块(参见 “使用正确的zend_extension指令” 查找可能的原因)。
  • 如果检验扩展已经正确设置,那么可能没有对 PDT 进行设置,因此无法使用已安装的调试器。如果选择了 Zend Debugger 作为 PHP 可执行文件的调试器,但是在 php.ini 文件中设置的是 XDebug,则会得到一些意外的结果。
  • 还有可能是防火墙问题。确定在 PHP Debugger 首选项中配置了防火墙允许的端口(如果安装并运行了防火墙的话)。
 

判断扩展目录的位置

要把 XDebug 或 Zend Debugger 扩展二进制文件安装到其他所有扩展的位置,使用phpinfo()php -i查找目录的位置。查看清单 11 中php -i命令的示例。


清单 11. 查找扩展目录

                    
...
extension_dir => /usr/local/php5/lib/php/extensions/
...
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值