msgbartop
PHP语言, PHP扩展, Zend引擎相关的研究,技术,新闻分享 – 左手代码 右手诗
msgbarbottom

13 Sep 11 关于做PHP扩展开发的一些资源

最近有个感觉, 越来越多的人开始从事PHP扩展开发的工作(越来越多的人来问问题了, 呵呵)

在这里先说声抱歉, 有的时候, 有的同学的邮件进了垃圾邮件没有办法及时回复.

为了方便大家, 我在这里罗列一些可能用到的资源.

1. 首先, 要推荐一本书 《Extending and Embedding PHP》, 如果你有时间, 我建议你在做之前好好读读这本书(目前没有中文版)

2. Google/Baidu 这个就不用多说了吧

3. PHP的源代码中,包含了一些编写良好的”例子”, 都在ext/目录下, 绝大部分Zend_API的使用, 都在里面有例子.

4. pecl-dev at lists.php.net 这个邮件组是扩展开发的交流邮件组, 如果你实在是Google/baidu不到你的问题的答案, 可以发邮件到这个邮件组提问, 不过, 一般来说, 要有耐心等待回复(大部分人和我们有15个小时的时差, 当然, 如果我看到了, 我会尽量回复)

5. efnet #php.pecl 这里聚集了pecl开发者, 你也可以来这里提问(我整天都在上面), 不过这里只能说英文, 另外提问的时候要注意不要直接粘贴代码, 而应该使用pastebin之类的工具(所以还是建议大家发邮件到pecl-dev)

6. 尽量编写一些phpt测试用例(phpt的写法在每个标准扩展下面都有例子, tests目录下), 来测试你的扩展.

7. 测试的时候用–enable-debug编译PHP, 来测试你的扩展, 你要做到执行你的扩展逻辑, 不输出任何错误信息

8. 使用valgrind检测内存泄露.

希望对大家有帮助.


分享到:



Related Posts:

Tags: , , ,

18 Responses to “关于做PHP扩展开发的一些资源”

  1. PHP程序员雷雪松 |

    不错的建议和意见。

  2. mom |

    鸟哥,如何在一个php扩展中实例化其他扩展中的类,比如,在我的自定义扩展myextension中使用pdo类

  3. moses |

    http://blog.sina.com.cn/s/articlelist_1835417731_3_1.html
    4PHP编译环境
    3PHP的内存管理(下)引用计数此博文包含图片
    3PHP的内存管理(上)内存管理的模
    2.PHP的内部变量结构
    1.PHP的生存周期
    PHP扩展

  4. moses |

    我翻译了点,正在看。有机会大家可以交流一下。
    http://blog.sina.com.cn/moses2012

  5. helius |

    这本书没中文真难肯,大牛你翻译一本吧我一定买

  6. pangee |

    灰常有帮助。

  7. syang |

    你好,鸟哥:
    我在编译php时,使用debug模式,调式扩展时,
    发现,如果自己定义inline函数,
    调用会报错,在符号表中找不到我的函数

    去掉inline后,可以调试

    虽然有一个内存泄漏清况,包括php内核自身的

    但是大部份的内存泄漏会报在
    MAKE_STD_ZVAL
    ZVAL_STRING
    这样的调用行!

    是不是过后需要用什么函数来释放呢?

  8. Thinking In LAMP Blog » Blog Archive » PHP每月通讯(2011年10月) |

    [...] http://www.laruence.com/2011/09/13/2139.html   关于做PHP扩展开发的一些资源 [...]

  9. 雪候鸟 |

    @早起的菜鸟 @Me.strone 诶, 私房菜的鸟哥是台湾的, 搞Linux的, :<

  10. 雪候鸟 |

    @walu 我看了下,翻译的挺好, 不过有一点, 就是那本书成书已经好几年了, 最近PHP改变较多, 尤其是5.4, 底层结构变化也比较多, 如果忠实翻译还好, 否则可能要考虑新加入的东西:)

  11. Me.strone |

    没注意,原来是传说中的鸟哥啊……看了你写的那两个私房菜,很不错。希望多多出好书!我们就多多向你学习了。

  12. 早起的菜鸟 |

    鸟哥 你是不是那个写私房菜的鸟哥啊?都是大神啊!我也取了鸟的名字,希望能够沾沾你们的才气

  13. walu |

    《Extending and Embedding PHP》我正在翻译,项目地址:http://phpbook.sinaapp.com 如果鸟哥偶尔有空,还请帮忙斧正。:-)

  14. iterse's blog |

    鸟哥,V5!

  15. 雪候鸟 |

    @Qianfeng 我自己用windows, 虚拟机是Linux, 在Linux下开发

  16. Qianfeng |

    鸟哥,我想知道你的,开发桌面是什么系统?。。

    还有日常使用的桌面是否同一个~~

  17. 雪候鸟 |

    好了, 呵呵, 换成书名号了…

  18. Ray |

    鸟哥。。。书名呢?

Leave a Reply

*