【PHP7底层设计与源码分析】部分勘误

发布时间:2019-08-08 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了【PHP7底层设计与源码分析】部分勘误脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

1、序

clipboard.png

zal 改为 zval
2、33页
从图3-1中我们看出,虽然char a只占了1字节,int b只占了4字节,但是long c并不是紧跟着b,而是根据8字节对齐后,c和b之间空了3字节
改为
从图3-1中我们看出,虽然char a只占了1字节,int b只占了4字节,但是b并不是紧跟着a,而是根据8字节对齐后,a和b之间空了3字节

3、图4-6 动态字符串赋值后$a 与 $b 关系图
更正为:

clipboard.png

4、图4-7 常量字符串赋值后$a 与 $b 关系图
更正为:

【PHP7底层设计与源码分析】部分勘误

5、图4-9 引用类型$a 与 $b 关系图
更正为:

@H_777_35@

6、图4-10 copy on wrITe过程示意图
更正为:

【PHP7底层设计与源码分析】部分勘误

7、图4-11 整形转成字符串
更正为:

【PHP7底层设计与源码分析】部分勘误

8、图4-13 opcode组装中字符串处理示意图
更正为:

【PHP7底层设计与源码分析】部分勘误

9、图9-4替换为下图:

【PHP7底层设计与源码分析】部分勘误

10、58页 图3-17下面的代码修改为: 
代码更正为
for($i = 0; $i <= 10002; $i++){
$a[$i] = array($i."_string");
$a[$i][] = &amp;$a[$i];
unset($a[$i]);
}

11、图3-4 PHP5中_zval_struct的大小
更正为:


【PHP7底层设计与源码分析】部分勘误

12、图3-5 PHP5中_zval_struct实际大小
更正为:


【PHP7底层设计与源码分析】部分勘误

13、图3-6 PHP5中变量实际占用的内存大小
更正为:


【PHP7底层设计与源码分析】部分勘误

14、图3-16 gc_globals的结构
更正为:


【PHP7底层设计与源码分析】部分勘误


15、4.2.2节 示例2代码有一处错误,更改前为:
图片描述
https://segmentfault.com/img/...

【PHP7底层设计与源码分析】部分勘误

更改后为:
图片描述
https://segmentfault.com/img/...

【PHP7底层设计与源码分析】部分勘误

16、
120页和122页代码修改为:

for($i=0;$i<4;$i++){
   $arr[$i] = 1;//packed array
}

以下是读者赵禹反馈, 感谢赵禹!

17、第4章 字符串:页码83页 php_request_shutdown方法名写成了 php_request_shotdow。

18、第6章 面向对象 : 页码138页,6.1.3接口中接口类可以通过extends继承,写成了 extend继承。

以下是读者Rai4over反馈:
19、 第108页,示例代码为:

$arr[] = 'foo';

改为

$a[] = 'foo';

感谢读者Rai4over

脚本宝典总结

以上是脚本宝典为你收集整理的【PHP7底层设计与源码分析】部分勘误全部内容,希望文章能够帮你解决【PHP7底层设计与源码分析】部分勘误所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。