Phper 学 C 兴趣入门 - 为什么 php 手册里经常说某个字符串函数是二进制安全的

引子

为什么 php 手册里经常说某个函数是二进制安全的?我们平常使用函数的时候也没发现有什么区别呀,那么二进制安全到底是什么意思呢?

Php 实验

<?php
echo strlen("abc"); // 3
echo strlen("abc\0"); // 4
echo strlen("abc\0d"); // 5
echo strlen("abc\0def"); // 7

从上面的规律可以看出\0被认为是一个字符,其实在上面的式子中\0是一个ascii字符。

补课简单说明下 ascii 码

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

猜你喜欢

转载自yq.aliyun.com/articles/718144