提交 2e2f6532 编写于 作者: C codinghuang

Update: 更新

上级 b29227c1
......@@ -8,21 +8,32 @@
PHP_FUNCTION(test);
```
然后全局`PHP`扩展函数的实现放在`study_*.cc`里面。
2、全局`PHP`扩展函数以及扩展方法的参数声明放在`study_*.cc``study.cc`里面。
2、类的方法声明放在相应的`study_*.cc`文件里面,并且声明为`static`类型。例如:
3、没有别名的全局`PHP`扩展函数的实现放在`study.cc`里面,有别名的全局`PHP`扩展函数的实现放在对应的`study_*.cc`里面。
例如,`study_coroutine_create`的别名是`Study\Coroutine::Create`
4、扩展方法声明放在相应的`study_*.cc`文件里面,并且声明为`static`类型。例如:
```c++
static PHP_METHOD(study_coroutine, test);
```
3、扩展函数以及扩展方法的参数声明放在`study_*.cc``study.cc`里面。
5、头文件的引入关系如下:
4、只在项目根目录下的`study_*.cc`文件里面使用`Zend API`,不在`src`目录的代码里面使用`Zend API`
```
study.cc 引入 php_study.h
php_study.h 引入 php内核提供的头文件
php_study.h 引入 include/study.h
include/study.h 引入 标准库函数
src/*.c 引入 对应的/include/*.h
include/*.h 按需引入 其他的include/*.h
```
5、用到的标准库函数都在`include/study.h`里面引入
6、只在项目根目录下的`study_*.cc`文件里面使用`Zend API`,不在`src`目录的代码里面使用`Zend API`
6、为了防止重复引入头文件,增加如下条件编译。例如,在`study.h`头文件里面写入:
7、为了防止重复引入头文件,增加如下条件编译。例如,在`study.h`头文件里面写入:
```c++
#ifndef STUDY_H_
......@@ -34,8 +45,6 @@ static PHP_METHOD(study_coroutine, test);
注意宏的命名规范。
7、只在`php_study.h`头文件里面引入`PHP`相关的头文件。`study_*.cc`只引入`php_study.h`文件,不去引入`include/study.h`文件。`study.h`文件是被`php_study.h`引入的。
(待补充)
[下一篇:整理文件](《PHP扩展开发》-协程-整理文件.md)
\ No newline at end of file
......@@ -15,3 +15,13 @@ study_coroutine.cc(文件)
study_coroutine_util.cc(文件)
```
我们在`study_coroutine.h`文件里面写下如下内容:
```c++
#ifndef STUDY_COROUTINE_H
#define STUDY_COROUTINE_H
#endif /* STUDY_COROUTINE_H */
```
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册