php闭包: 匿名函数 a){}
程序闭包: 就是函数内部的函数
流式文件: 二进制文件(不受物理符号(如回车符)的控制)
BOM (爆炸不见了)头 来龙去脉:
BOM 头用来标记编码方式, 这无可厚非, 重点搞一个不存在的字符来表示(零宽度非换行空格 哈哈)
明明可用可见字符串来表示编码(这就是设计者的bug)
=> 所以UNIX就不兼容 所以才产生问题.
因为BOM本身违反了一个UNIX设计的常见原则,就是文档中存在的数据必须可见。BOM不能作为可见字符被文本编辑器编辑,就这一条很多UNIX开发者就不满意。
unicode =>(压缩省空间) utf-8 utf-16
一切为了时间 空间
http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html
二进制安全 一个bug的兼容
string2 = "Hello\0Hello";
echo strcoll(string2); /返回0, 由于是非二进制安全,误判为相等 /
echo strcmp(string2); /返回<0,不相等/
问题: 对于c语言‘\0’是字符串的结束符,它读到’\0’就会默认字符读取已经结束,从而抛掉后面的字符串。
网友评论