Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/onecodemonkey/php-src-analysis
PHP源码分析注解。
https://github.com/onecodemonkey/php-src-analysis
analysis analytics php source-code src
Last synced: 21 days ago
JSON representation
PHP源码分析注解。
- Host: GitHub
- URL: https://github.com/onecodemonkey/php-src-analysis
- Owner: OneCodeMonkey
- License: gpl-3.0
- Created: 2019-05-04T15:40:24.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-09-02T08:56:01.000Z (over 5 years ago)
- Last Synced: 2024-12-03T06:42:54.211Z (about 1 month ago)
- Topics: analysis, analytics, php, source-code, src
- Homepage:
- Size: 23.4 KB
- Stars: 28
- Watchers: 3
- Forks: 11
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# php-src-analysis
PHP源码分析注解。
###### 进度log
| Date | 解决点 |
| ---- | ------ |
| // | // |### PHP 源代码分析目录
1. #### 第一章 构建系统 准备工具、库及需要具备的基础知识;
2. 如何编译不同平台的版本?编译时的各个选项是什么含义?
3. 如何创建一个 PHP 扩展/模块?如何创建一个 Zend 扩展?
4. 如何调试 PHP?如何调试 PHP/Zend 扩展?
5. #### 第二章 PHP 与 SAPI 的生命周期 脚本的运行周期
6. 模块/脚本的起始与终止函数;
7. PHP SAPI 协议;
8. 嵌入式 PHP 设计。
9. #### 第三章 内存管理 Zend 的内存管理器框架;
10. 内存申请与释放流程,垃圾回收;
11. 持久化(persistence)
12. #### 第四章 线程安全 TSRM
13. 我是否该启用 ZTS?各有什么优缺点?
14. 如何构建一个 ZTS 的程序/扩展?
15. #### 第五章 变量与常量 PHP 中的数据类型。
16. 变量、常量与静态变量。
17. 引用计数机制;
18. 资源的创建与回收;
19. 未来字符串的 UNICODE 支持、JIT 支持。
20. #### 第六章 函数 函数的内部布局;
21. 函数的定义;
22. 如何获取函数的参数。可选参数、参数默认值;
23. 函数的返回值;
24. #### 第七章 类与对象 类的内部布局(属性、方法);
25. 构造函数与析构函数;
26. 类的继承与转换;
27. 接口(轻量级的类),微观上与类的差别;
28. 类之间的up casting 和 down casting。
29. stdClass。
30. #### 第八章 错误与异常 什么是错误、什么是异常。两者的区别;
31. 如何创建和抛出异常;
32. try/catch 的设计与实现;
33. #### 第九章 流(Streams)支持 这方面我接触较少,内容待定;
34. #### 第十章 虚拟机 脚本编译机制(词法分析、语法分析);
35. 脚本的执行机制(CALL|SWITCH|GOTO);
36. 各个符号表的作用;
37. 开发 OPCode 缓存器;
38. 开发 PHP 调试器;
39. PHP编译执行分离的实现(或者,源码加密的实现)
40. #### 附录 完整的 PHP API、Zend API 以及宏(Micro)参考(长期工程)
41. Zend Engine 1 的主要特性,与 Zend Engine 2的主要差别;
42. Zend Engine 3 的主要特性,与 Zend Engine 2的主要差别;
43. 相关资源