PHP快速定位函数所在扩展模块(顺带说下语言结构和内置函数)
2012-05-02 01:05
387 查看
导读:在快要入睡前,想起上个月发生的一件事儿。还是和session有关。在这之前,我要找一个函数看源码,都打开源码,打开.h文件.c文件,慢慢寻找。找到了再看源码。效率奇低不说,等我找到函数在哪个扩展(有些并不好找,即使你看到手册也不明白),我已经很困了。嘿嘿,终于让我翻出一个方法。
1 在说具体的方法前,先记说一下 语言结构 和 内置函数。
语言结构,记得一句话就好:和if神马的是同类;
内置函数,由代码段组成的可被重写、调用的已经编译在运行环境里的一种对应关系(有点装了,这个是结合数学里的函数定义的解释,自己乱凑的)。
整理一个php语言结构——容易被误解的那些:
array
die
echo
empty
include(include_once是fun)
isset(和is_null函数牵扯)
listrequire(require_once是fun)
unset
2 CLI下(不愿意写一个脚本,这样比较装,嘿嘿嘿嘿)
注意和你使用的外壳运行环境相关,上面语句在xshell下。如果在win cmd下,是报错的。应该使用:
想起我的源码阅读计划,汗……天下…………
1 在说具体的方法前,先记说一下 语言结构 和 内置函数。
语言结构,记得一句话就好:和if神马的是同类;
内置函数,由代码段组成的可被重写、调用的已经编译在运行环境里的一种对应关系(有点装了,这个是结合数学里的函数定义的解释,自己乱凑的)。
整理一个php语言结构——容易被误解的那些:
array
die
echo
empty
include(include_once是fun)
isset(和is_null函数牵扯)
listrequire(require_once是fun)
unset
2 CLI下(不愿意写一个脚本,这样比较装,嘿嘿嘿嘿)
php -r '$m=get_loaded_extensions();foreach($m as $mn){$f=get_extension_funcs($mn); if(in_array('mysql_query',$f)){ exit($mn); } }'
注意和你使用的外壳运行环境相关,上面语句在xshell下。如果在win cmd下,是报错的。应该使用:
php -r "$m=get_loaded_extensions();foreach($m as $mn){$f=get_extension_funcs($mn); if(@in_array('mysql_query',$f)){ exit($mn); } }"
想起我的源码阅读计划,汗……天下…………
相关文章推荐
- PHP的语言结构和函数的区别
- PHP 语言结构(Language constructs)和函数的区别
- 如何设计PHP业务模块(函数/方法)返回结果的结构?
- PHP的语言结构和函数的区别
- php扩展模块安装 快速自动安装
- 关于php的语言结构和函数
- php(扩展到其他变成语言) self:: const static private protected public $this 函数参数访问类变量相关
- php 快速定位代码错误、异常之register_shutdown_function()函数学习
- php语言结构和函数的区别
- PHP 语言结构(Language constructs)和函数的区别
- php语言结构与函数的区别
- 易语言版{大智慧/分析家/飞狐交易师}DLL插件接口开发模块(beta),自定义股票软件公式扩展函数
- php扩展模块安装 快速自动安装
- 易语言版{大智慧/分析家/飞狐交易师}DLL插件接口开发模块(beta5),自定义股票软件公式扩展函数
- 学会利用差异对照法快速定位bug所在的模块
- PHP 语言结构(Language constructs)和函数的区别
- PHP的语言结构和函数的区别
- 【PHP】语言结构 && 函数
- PHP匿点之语言结构快于函数的原因
- PHP 语言结构(Language constructs)和函数的区别