将变量类型从字符串更改为二进制


Change variable type from string to binary

我有一个字符串:

  $str = "01110001";

和我想改变它的类型为二进制:

$bin = (binary) $str;

(因为我想逆它)但是,当我尝试var_dump($bin)时,我得到:

string(8) "01110001" 

谁能告诉我我错过了什么?

二进制不是数据类型。因此你不能用它来铸造。

但是,您可以使用bindec函数将二进制表示为十进制。

$bin = (string)bindec($str);

注意:每个数字都以二进制形式存储在内存中。所以你不需要把它转换成二进制。只要用bindec,它就会把它转换成数字。然后以4字节整数的形式存储。如果是字符串,那么每个数字将使用8个字节