zval这样的定义在哪里?

时间:2012-04-22 14:23:11

标签: c eclipse eclipse-cdt php-extension

我尝试使用Eclipse和CDT开发PHP扩展,但扩展代码报告为充满语法错误和警告。我设法通过告诉CDT从PHP源代码中查找PHP include目录和main目录来解决其中的一部分,这些目录解决了所有的包含,但仍然有很多问题。

具体来说,我在哪里可以找到zvalSUCCESSFAILURESTANDARD_MODULE_PROPERTIESzend_module_entryzend_function_entry和{{的定义1}?如何让CDT不将zend_parse_parameters<module name><module name>_functions标记为无法解析的符号?

有没有更好的方法来使用IDE开发PHP扩展?

1 个答案:

答案 0 :(得分:2)

在哪里可以找到:

typedef struct _zval_struct zval;                     : ./Zend/zend.h
struct _zval_struct {                                 : ./Zend/zend.h
SUCCESS                                               : ./Zend/zend.h
FAILURE                                               : ./Zend/zend.h
STANDARD_MODULE_PROPERTIES                            : ./Zend/zend_modules.h
typedef struct _zend_module_entry zend_module_entry;  : ./Zend/zend_modules.h
struct _zend_module_entry { :                         : ./Zend/zend_modules.h
typedef struct _zend_function_entry {
…
} zend_function_entry;                                : ./Zend/zend_API.h
zend_parse_parameters(                                : ./Zend/zend_API.c

如果您想查看PHP源代码,我建议您将{Vim与cscope结合使用。然后你所要做的就是在zval上打上标记,输入两个键然后跳转到定义。


从快速谷歌看起来Eclipse也有一些cscope支持等。 Search workspace?它需要你将PHP源加载到工作空间中。我想。

谈到CDT,我不知道。从未使用过它。


编辑:

出于好奇而需要了解它,需要了解CDT。

  • 创建了一个标准的C项目。
  • 右键单击项目
    • 路径和符号
      • 来源地点;添加了PHP目录。
  • 右键单击项目
    • 索引
      • 重建(大源需要一段时间)

现在我可以说ie zend_parse_param Ctrl Space 并获得自动完成功能。或zend_parse_parameters( Ctrl Space

或选择Search - &gt; C/C++...并选择“定义”,文本“zval” - &gt;搜索并获取定义。

或者输入zva Ctrl 空格并获取zval等。

您也可以在Project Explorer中右键单击PHP源代码,然后选择Exclude from build等。