我有一个这样的表:
// numbers +---------+------------+ | id | numb | +---------+------------+ | int(11) | bit(10) | +---------+------------+ | 1 | 0000000001 | | 2 | 0000000101 | | 3 | 0000000000 | | 4 | 0000001011 | +---------+------------+
当我获取numb列时,结果将是这样的:
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。我怎样才能做到这一点?
5
0000000101
您可以使用decbin()函数和sprintf预先添加零
<?php $numb = 5; echo sprintf("%010d",decbin($numb));
输出:
根据您的评论:
12 - 0000001100 26 - 0000011010
更新1:
您可以这样分配$numb变量:
$numb
$numb = sprintf("%010d",decbin($result['numb']));