我有这样一张桌子:
// numbers
+---------+------------+
| id | numb |
+---------+------------+
| int(11) | bit(10) |
+---------+------------+
| 1 | 0000000001 |
| 2 | 0000000101 |
| 3 | 0000000000 |
| 4 | 0000001011 |
+---------+------------+
当我获取numb列时,结果将如下所示:
// Query
MysqL> SELECT numb FROM numbers WHERE id = 2
// Fetching by PHP (pdo)
$result = $stm->fetch();
$numb = $result['numb'];
echo $numb;
//=> 5
如你所见,最终的结果是5.虽然我想把这个确切的值作为一个字符串,比如0000000101.我怎么能这样做?
解决方法:
您可以将decbin()功能和sprintf用于预先挂起的零
<?PHP
$numb = 5;
echo sprintf("%010d",decbin($numb));
输出:
0000000101
从你的评论:
12 - 0000001100
26 - 0000011010
UPDATE1:
您可以像这样分配$numb变量:
$numb = sprintf("%010d",decbin($result['numb']));
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。