如何在PHP中对从十进制转换为16位二进制的数字进行零填充?

时间:2017-06-15 20:55:15

标签: php

我知道如何使用

来做到这一点
str_pad(decbin($number),16,"0",STR_PAD_LEFT)

然而,似乎使用

printf("blah",$number)

应该更快地做到这一点,但我不知道" blah" 格式字符必须是什么。 由于这必须进行数百万次,因此任何加速都是有用的。 我发现的唯一例子是使用"%08b" 将零填充到8位十进制数转换为二进制。 不,"%016b"不起作用。所有其他示例都避免超过8位。 PHP.NET手册对我来说只是胡言乱语。

1 个答案:

答案 0 :(得分:0)

对我来说%016b 工作:

<?php
$number = decbin(11);
printf("%016b",$number);

我得到的输出是:

0000001111110011

这是x86-64 Linux系统上的PHP-7.0.18。