我正在寻找一个KCacheGrind替代品,或者至少是Mac OS X的二进制包?
我将使用KCacheGrind与XDebug for PHP,但Mac Os X在这里是正确的环境......
谢谢
编辑:我知道我可以使用MacPort,但我正在寻找这种痛苦安装的替代方案.
也许是"在mac方式"的东西
管理员已在我们的共享PHP 5.3.0服务器中安装了Xdebug 2.1.1,以便使用其调试器.现在,我几乎无法读取未捕获异常的堆栈跟踪,因为它们被Xdebug格式化,其中令人讨厌的颜色与网站的CSS交互不良:

由于PHP作为Apache模块运行,我试图在.htaccess文件中禁用此功能,但我无法实现:
php_flag xdebug.default_enable Off
php_flag xdebug.overload_var_dump Off
php_flag xdebug.show_exception_trace Off
php_value xdebug.trace_format 1
Run Code Online (Sandbox Code Playgroud)
phpinfo()在Local Value列中显示我的更改,但我仍然可以看到那些可怕的橙色表.我需要改变的指令是什么?
我使用XAMPP并且我已经配置它以便为我创建的每个项目提供虚拟主机.
在我的php.ini中,我启用了xdebug,我的脚本运行正常.我的意思是,任何时候都有警告,通知,错误,由xdebug报告.
现在我想启用Xdebug探查器,并且我已经对我的php.ini进行了以下更改,以便允许Xdebug探查器生成日志文件:
; xdebug.profiler_enable
; Type: integer, Default value: 0
; Enables Xdebugs profiler which creates files in the profile output directory. Those files can be
; read by KCacheGrind to visualize your data. This setting can not be set in your script with ini_set
; ().
xdebug.profiler_enable = 1
; xdebug.profiler_output_dir
; Type: string, Default value: /tmp
; The directory where the profiler output will be written to, make sure that the user who the PHP
; will …Run Code Online (Sandbox Code Playgroud) 我刚刚在mac osx 10.7中通过pear安装了phpunit,除了内存限制错误(xdebug启用了报告)之外,一切正常.
我试图将-d memory_limit=512M参数添加到phpunit,但它不适用,因为,在第一个错误,我添加var_dump(ini_get('memory_limit')); exit;并打印字符串(3)"32M"
那么,为什么它没有被应用呢?
除此之外,如果我跑
php -d memory_limit=256M -r "echo ini_get('memory_limit');"
Run Code Online (Sandbox Code Playgroud)
它呼应"256M"
是不是phpunit可能没有执行相同的PHP?
首先,有一些xdebug信息:
Xdebug installed: 2.2.0rc1
Server API: Apache 2.4 Handler Apache Lounge
Windows: yes - Compiler: MS VC9 - Architecture: x86
Zend Server: no
PHP Version: 5.4.0
Zend API nr: 220100525
PHP API nr: 20100525
Debug Build: no
Thread Safe Build: yes
Configuration File Path: C:\Windows
Configuration File: C:\Uniserver\UniServer\usr\local\php\php.ini
Extensions directory: C:\Uniserver\UniServer\usr\local\php\extensions
You're already running the latest Xdebug version
Run Code Online (Sandbox Code Playgroud)
一切都很好看.这就是我的php.ini的样子:
[Xdebug]
zend_extension=C:\Uniserver\UniServer\usr\local\php\extensions\php_xdebug-2.2.0RC1-5.4-vc9.dll
xdebug.remote_host=localhost
xdebug.remote_port=9123
xdebug.idekey=PHPSTORM
xdebug.remote_mode=req
xdebug.remote_handler=dbgp
xdebug.remote_enable=1
xdebug.remote_connect_back=0
xdebug.remote_autostart=0
xdebug.remote_log="C:\Uniserver\UniServer\usr\local\php\extensions\tmp\log.log"
xdebug.overload_var_dump=1
xdebug.trace_format=0
xdebug.show_exception_trace=0
xdebug.default_enable=0
Run Code Online (Sandbox Code Playgroud)
现在,我将尝试使用PhpStorm进行调试.首先我转到Settings-> PHP-> Servers并添加:
Name: localhost
Host: …Run Code Online (Sandbox Code Playgroud) 我有Eclipse PDT的xdebug设置.每次我启动调试会话时,Eclipse都会在我的根index.php文件的第一行中断.是否有可能阻止这种行为?
我在ruby上有点被宠坏了,我习惯使用pry应用程序的惊人设施.我将一个应用程序锁定为1个线程,然后让pry在httpd控制台中弹出,然后能够解决很多问题的底部,但是我没有发现任何类似于PHP的可用内容.是否有类似或接受的解决方案,这样的PHP用于在执行期间调试和跟踪数据结构等?
我正在使用NetBeans中的Xdebug逐步执行CodeIgniter的源代码,我正在寻找一种方法来查看定义的常量.如果不可能,有没有其他方法来显示所有定义的常量?
我在使用xampp的Ubuntu服务器上安装xdebug时遇到问题.我知道在Stack Overflow中有几个关于这类问题的问题,但我找不到任何解决方案.
首先这是php --version命令的输出:
PHP 5.3.8 (cli) (built: Sep 19 2011 13:29:27)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
with Xdebug v2.2.0, Copyright (c) 2002-2012, by Derick Rethans
Run Code Online (Sandbox Code Playgroud)
输出php --ini命令:
Configuration File (php.ini) Path: /opt/lampp/etc
Loaded Configuration File: /opt/lampp/etc/php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
Run Code Online (Sandbox Code Playgroud)
输出php -m命令:
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dba
dom
ereg
exif
fileinfo …Run Code Online (Sandbox Code Playgroud) 当我开始调试并在服务器上使用另一个脚本(例如Adminer)时,即项目外部不打算调试的脚本时,脚本将被PhpStorm暂停,并出现以下两个警告:
现在,我必须按F9(即resume)继续执行脚本.这很烦人.我可以从调试中排除这些脚本吗?