有知道吗?哈哈,感觉这样自己就牛了啊
同时补充一个成为 linux 核心开发者的案例:
热爱 linux,使用过程中发现了问题,尝试自己动手修改
发现问题在社区中还没有人成功提交解决方案,提交 patch 给有邮件组(当时的方式),被驳回
连续一年,提交10+ 次更新,其中有因为算法太复杂等原因被继续驳回,最终成功提交
因为一年中的持续沟通(混个脸熟)以及最后的认可(代码才是硬道理),成功加入邮件组,并参与到相应模块的开发维护工作中
当然,回到我们的主题,你得先会 c 语言,然后 c语言 比较 6 一点
首先你要回c语言,能写扩展甚至是直接对源码贡献自己的代码。
成为PHP官方开发者不像考试,你考上了就能当,成为PHP开发者主要是你的能力收到官方的认可,或者做出的贡献受到官方的认可,并不是相当就能当的。
中国不仅仅是鸟哥,最少还有swoole的开发者韩天峰都是有php.net邮箱的,但他们都不是单纯的php开发者,他们都是直接对php代码做贡献的人,不像我们这些只能用php。
btw 我也希望自己有一天能够直接对php源码做贡献。
2 回答1.3k 阅读✓ 已解决
1 回答1k 阅读✓ 已解决
2 回答854 阅读✓ 已解决
1 回答1k 阅读✓ 已解决
2 回答910 阅读
1 回答894 阅读
1 回答823 阅读
除了像mcfog说的那样,提issue,提patch,还可以开发优质PECL扩展,并尝试提交PECL扩展到pecl.php.net.像PHP7中跟鸟哥并肩作战的另一个核心开发者Dmitry Stogov(@列宁格勒)在PHP4时代就开发了加速器Turck MMCache来提升PHP性能,现在领导ZendOpcache和Zend-JIT项目开发.鸟哥也是一步一步走来的,开发了Yaf/Yar/Yac/Taint等扩展,同时也是APC/Opcache/Msgpack扩展的维护者.
PHP Swoole作者写的教程 构建PHP扩展:
http://wiki.swoole.com/wiki/page/238.html (视频教程)
http://php.net/manual/zh/internals2.buildsys.php
php-src/ext/ext_skel脚本用于生成PECL扩展源码骨架.
http://www.laruence.com/2011/09/13/2139.html
入门: http://www.walu.cc/phpbook/
案例: php-src/ext
PECL开发邮件组: http://news.php.net/php.pecl.dev
尽量编写一些phpt测试用例,php-src/tests下有很多参考.
测试时用--enable-debug编译PHP,要做到执行你的扩展逻辑,不输出任何错误信息.用valgrind检测内存泄露.
像PHP代码加密扩展php-beast和类似Yac的PHP进程内的K/V缓存扩展pcache(代码量很少),你可以参考一下:
https://github.com/liexusong