草庐IT

DEBUGGING

全部标签

php - Xdebug成功连接到DBGP客户端,但不会在断点处停止

我有Xdebug2.1安装,并运行PHP5.2.13。它可以成功连接到多个DBGP客户端(即xdebug.remote_log显示来回通信,客户端本身也显示传入连接),但它不会在断点处停止。我试过NetBeans,MacGDBp还有命令行debugclient与Xdebug捆绑在一起。一个典型的交换看起来像:Logopenedat2010-07-2009:33:17->Logclosedat2010-07-2009:33:18NetBeans尝试设置断点,Xdebug会确认这些断点:但是,Xdebug仍然不肯停止! 最佳答案 如果您

php - 是否可以将调试器附加到正在运行的 PHP 进程?

我有一个PHP脚本,我们每隔几分钟通过一个cron条目运行一次,并且时不时地(大约每周一次)而不是正常结束,它保持运行,占用100%的CPU核心(我'm假设,无限循环)查看代码并“思考”它,我找不到发生这种情况的任何原因,但确实如此。到目前为止,当我得到3个或更多时,我会杀死它们,这解决了CPU问题,但我想对此做点什么......有没有什么方法可以转储一个进程,或者用调试器附加到它,这样我就可以知道一些,任何它在做什么?(它在哪一行PHP上会有很大的帮助)。我不介意当我转储时进程是否终止,或其他任何事情。这是一个PHP脚本,在CentOS5.6机器上从命令行运行,我是*nix的大菜鸟,

php - 如何使用 Eclipse 和 XAMPP 在 Ubuntu 12.04 上设置 PHP 调试?

我已经尝试配置它很长一段时间了,但我无法让它正常运行。到目前为止完成:下载最新版本的xampp并将其移动到/opt/lampp使用apt-get安装php5-xdebug在/opt/lampp/etc/php.ini中将implicit_flush更改为On在ini文件末尾添加了以下行:[xdebug]zend_extension="/usr/lib/php5/20090626/xdebug.so"xdebug.remote_enable=1xdebug.remote_handler="dbgp"xdebug.remote_port=9000xdebug.remote_host="lo

php - 在 codeigniter 中调试路由?

我想知道是否有任何简单的方法可以在codeigniter中调试路由?我希望能够在日志中看到以下内容:Clientsent:apps/somethingRoutefound:apps/(:any)-->applications/searchbyname/$1Redirecting:apps/something-->applications/searchbyname/something//andjustcausewecanletsmakethesearchbynamefunctionnotexistERROR-2012-09-1622:10:05-->404PageNotFound-->a

php - 从 print_r 或对象中排除私有(private)属性(property)?

基本上我使用的是CodeIgniter,并且CodeIgniter基类很大,当我print_r我的一些对象时,它们内部嵌入了基类。这使得获取我真正想要的信息(其余属性)变得很痛苦。所以,我想知道是否有一种方法可以隐藏或删除基类对象?我试过了clone$object;unset($object->ci);print_r($object);当然ci属性是私有(private)的。我用于转储的实际函数是:/***Outputsthegivenvariableswithformattingandlocation.Hugeprops*outtoPhilSturgeonforthisone(htt

php - 如何调试从未完成加载的 PHP 脚本?

我的任务是针对不同的评估阶段(开发/测试/暂存等)在各种环境中建立网站。然而,在我们的暂存环境中,似乎有一些不同之处阻止PHP脚本完成,因此页面永远不会传送到浏览器。我想知道是否有一种方法可以输出以在切断连接时记录某种堆栈跟踪或回溯,或者是否有其他方法可以查明PHP在脚本的任何给定点上究竟在做什么生命周期?这是一个Drupal站点,因此它涉及很多我不熟悉的代码,并且可能需要数小时才能散布die;命令以查看脚本加载到哪里。我知道我可能应该查看环境的差异,但是所有环境都应该具有非常相似的配置(Ubuntu11.04),并且暂存环境似乎很乐意为其他PHP站点提供服务,而这个特定站点拒绝完成。

php - Magento 调试环境

当我们去年开始在我们的网站上使用Magento开发环境时,我就在寻找关于设置Magento开发环境的想法。我没有找到任何有效的东西,所以我继续使用日志文件进行var_dump。现在Magento又有了一年的时间和数百名开发人员,我想知道是否有人找到了更好的调试Magento的解决方案。我们使用Eclipse作为我们的开发环境。我们使用ZendDebugger尝试了PDT2.0之前的版本,但运气不佳。 最佳答案 使用FirePHP怎么样?http://ajzele.net/utilize-firebug-and-firephp-to-

php - 如何在 Eclipse 中设置 Zend Debugger?

我正在尝试设置我的第一个PHP开发环境,但在使调试环境正常工作或更准确地命中断点方面遇到了很多问题。这是我做的1.)确认php在我的Windows上的Apache服务器中正常工作。为此,我创建了一个包含phpinfo()的测试index.php文件。2.)我已将ZendDebugger安装到Eclipse中。3.)我已经使用以下代码设置了我的php.ini文件。[Zend]zend_extension_ts="c:/php/ext/ZendDebugger.dll"zend_debugger.allow_hosts=127.0.0.1/32zend_debugger.expose_re

php - 即使在 XDebug/PHPStorm 中没有设置断点,浏览器也会挂起

我正在使用xdebug调试带有phpstorm的php应用程序。大部分时间调试工作。但是,我反复观察到以下行为:我点击“监听传入连接”不加断点在Chrome中重新加载页面确保页面永远挂起看到phpstorm没有在断点处停止这几乎就像浏览器认为它在断点处停止一样,即使它不是。关闭并重新打开storm可以暂时解决问题,但问题总是会再次出现。单击“停止监听传入连接”允许加载页面,但当然会阻止我放置断点。即使我确实添加了一个断点,这种行为仍然存在,也就是说,我的断点被完全忽略了。如果有帮助,here'smyxdebugconfig我在跑php5.5downloadedfromhere.

php - 如何在 PHP (Laravel) 中调试 "Symfony\Component\Debug\Exception\FatalErrorException"错误?

我收到客户遇到的许多错误的报告Symfony\Component\Debug\Exception\FatalErrorExceptionMaximumexecutiontimeof30secondsexceeded我本人无法在本地机器或生产服务器上复制它。这个URL遍布整个网站,所以,我猜这是全局性的东西,比如导致这个的中间件。我正在使用Sentry.io收集数据,但异常跟踪只有1个条目指向Symfony基本代码中的特定代码,最常见的是:vendor/symfony/finder/Iterator/ExcludeDirectoryFilterIterator.phpatline73ve