为了账号安全,请及时绑定邮箱和手机立即绑定

php扩展开发如何在内核api中找原有php函数

php扩展开发如何在内核api中找原有php函数

料青山看我应如是 2019-04-14 10:07:58
刚刚学习php扩展的新手。如果我想找php现有的函数,如何在内核中找呢?比如说var_dump,print_r,或者mysql,mysqli的函数应该如何找,如何调用呢?
查看完整描述

2 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

可以用这个{OpenGrok搜索一下,搜索之前先选择PHP版本,比如搜索函数,在Definition搜索框中输入函数名即可。
例如搜索var_dump函数,就可以搜索到ext/standard/php_var.h头文件,进而可以找到ext/standard/php_var.c文件中的函数实现:PHPAPIvoidphp_var_dump(zval**struc,intlevelTSRMLS_DC)函数.
调用的话引入头文件,然后调用PHPAPI定义的函数名就可以了吧
                            
查看完整回答
反对 回复 2019-04-14
?
暮色呼如

TA贡献1853条经验 获得超9个赞

【转】如何迅速找到PHP底层源码中找到指定函数的实现位置
查看PHP函数的C语言实现:cdphp-src查找grep-rn"PHP_FUNCTION(socket_accept)"./ext返回./ext/sockets/sockets.c:938:PHP_FUNCTION(socket_accept)查找grep-rn"PHP_FUNCTION(array_merge)"./ext返回./ext/standard/array.c:2266:PHP_FUNCTION(array_merge)可以看出,PHP库函数的基本都在php-src/ext目录下,里面有具体函数库比如socket,一般的函数基本都在标准库standard.
PHP源码的几个重要目录:ext(扩展)108MZend(引擎)9.2Msapi(cli/cgi/mod_php/fpm)3.1M
@eechen
                            
查看完整回答
反对 回复 2019-04-14
  • 2 回答
  • 0 关注
  • 295 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信