如何计算php中包含零的数字位数

时间:2013-06-11 05:46:25

标签: php count numbers counting

我正在计算PHP中的数字位数。我只想计算数据库的数字值。在第一个数字有零意味着,它不会采取 作为计数的数字。

例如:

12  ==number of count value is 2
122 ==number of count value is 3

我可以通过function.here my function来实现这一点。

function count_digit($number)
{
    return strlen((string) $number);
}

$number = 12312;
echo count_digit($number); // 5

但是我需要为该数字添加零$num = 0012312;(零填充)。

012 == number of count value is 3
0133 == number of count value is 4

让我知道如何解决它。

3 个答案:

答案 0 :(得分:18)

如果您希望计算前导零,则应将其指定为字符串而不是数字。

然后,尝试计算字符数。这次,它将包括零。无需在函数内输入强制转换。

所以,现在您的代码将如下所示:

function count_digit($number) {
  return strlen($number);
}

//function call
$num = "number here";
$number_of_digits = count_digit($num); //this is call :)
echo $number_of_digits;
//prints 5

答案 1 :(得分:8)

function count_digit($number) {
return strlen((string) $number);
}

//function call
$num = "012312";
$number_of_digits = count_digit($num); //this is call :)
echo $number_of_digits;

将$ num变量作为字符串。

答案 2 :(得分:0)

不需要函数包装器。答案是

$n = "00001";
mb_strlen((string) $n);  // result is 5