如何在没有PHP引导标志的情况下翻转位?

时间:2018-04-11 21:36:10

标签: php binary integer

使用~ - 运算符在PHP中翻转/反转位时,输出包含许多前导符号,如果输出原始整数,这显然是不必要的。在将二进制值解析为整数时,您将看到值不相等。请参阅下面的示例。

$integer = 0b11110; // raw integer
echo "{$integer}: " . decbin($integer) . PHP_EOL; // print integer-value before flipping
$integer = ~$integer; // flipping/inverting the integer

$binary = decbin($integer);
echo "{$integer}: " . $binary . PHP_EOL; // print integer-value after flipping
echo bindec($binary) . PHP_EOL; // print parsed binary-value

see result on 3v4l.org

是否可以删除前导符号,以便第二次使用echo会输出类似100001(或00001}的内容,如果您不带正号/减号因为-31显然与1111111111111111111111111111111111111111111111111111111111100001不同。

0 个答案:

没有答案