什么是字符串函数二进制安全?

在PHP手册中我们经常看到某个函数是二进制安全的,大家平时开发的时候也没有感觉到有什么区别,那么二进制安全究竟是什么意思呢?

我们知道,计算机内部,所有信息最终都是一个二进制值。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从00000000到11111111。

我们知道二进制数据是不方便理解的,因此在上个世纪60年代,美国制定了一套ASCII 码,将英文字符与二进制数据对应了起来。

ascii码对照表

而在ASCII码中,前33个属于控制字符,比如我们用的换行符“\n”,这些控制符是不可见的。

比如我们在PHP中想输出一个字符“abc\nd”,如果简单的用echo看看会得到什么结果?

在这里我就不去演示了。关于函数的二进制安全很好理解。希望这篇文章可以帮助朋友们更好的理解函数的二进制安全。

你想把广告放到这里吗?

发表评论

您必须 登录 才能发表留言!