首頁 >後端開發 >php教程 >c++ - 如何查看php内核的调度顺序,不想每次编译然后看看是否执行了自己想要的分支

c++ - 如何查看php内核的调度顺序,不想每次编译然后看看是否执行了自己想要的分支

WBOY
WBOY原創
2016-06-06 20:19:331332瀏覽

问题是这样的,我想调试一下看看php内核的具体文件调用,大体的调用结构自己大概也知道了,但是具体的不知道如何方便的调试

我目前所用的方法就是手动的去php_printf一些信息,然后重新编译php来看看是否走到了这一步,但是这样每次花好长时间重新编译。

所以想问大家有没有好的办法可以调试!

回复内容:

问题是这样的,我想调试一下看看php内核的具体文件调用,大体的调用结构自己大概也知道了,但是具体的不知道如何方便的调试

我目前所用的方法就是手动的去php_printf一些信息,然后重新编译php来看看是否走到了这一步,但是这样每次花好长时间重新编译。

所以想问大家有没有好的办法可以调试!

strace

编译 phpconfigure 中添加 --enable-debug 即可打开 php 调试模式,这时候编译的 php 是带有调试信息的,可以通过 gdb 进行断点调试。不知道这样能不能满足你的需求?

不知道你使用的是什么IDE,我只是介绍一下我的经验。我开发PHP扩展使用 CLion ,使用 debug 模式的 php ,在 Clion 中直接使用 gcc 编译扩展运行,断点可以直接在编译器中打,调试运行、步进都正常使用。如果 php 的源码仍然保留着,可以把断点直接打到源码中。编译到开始调试一步完成。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn