我想找到如何求两个二进制数的和。 问题是它们没有前导 0b 前缀。 我可以使用 bindec() 执行此操作,然后使用 decbin() 返回二进制,但据说它的性能非常差。 有没有办法避免这些功能? 例如,如何以二进制形式求和:
$a = "11";
$b = "01";
谢谢!
编辑:为了更清楚,使用 binSum 是一个用户函数,我想要:
echo binSum($a,$b);
打印:
100
好吧,看起来是这样的:
var_dump( 0b11 );
给予:
int(3)
所以,一旦 PHP 内部不再以二进制格式记录数字,而是将其转换为十进制,我的问题看起来毫无意义,因为它总是会这样做:
bin 数字 -> 转换为 dec 数字 -> sum
所以即使我们阅读代码时,我们也可以认为将二进制转换为十进制然后经过一些操作再返回二进制是没有用的,它不会为 PHP 内部所做的添加任何操作。