0

这个:

$difference = 05-1;

结果是

4

如果我这样做也一样:

$difference = 05-01;

在保持前导零的同时有一种内置的减法方法吗?我知道我可以检查差异是否只有 1 个字符,如果有,请添加前导零,但我只是想知道是否有默认方法可以返回结果,其中已经包含 0。

4

2 回答 2

2

如果只是输出问题,您可以使用 printf() 添加前导零。以下:

<?php
printf("Result: %02d", 04-1);
?>

将输出:

Result: 03

%02d转换为用 '0' ( %0 2d)填充2 个空格 (%0 2 d) 并格式化为整数 (%02 d )。使用 printf() 可以做很多事情来设置精度、添加前导字符以及在输出文本时使用占位符。

于 2012-05-07T02:25:53.593 回答
2

不,我不认为 PHP 会原生保持前导 0,除非它是浮点数。在PHP44不是04这样0.40.4

因此,如果您需要整数中的前导,请使用str_pad()0降低10填充:

<?php 
$difference = (05-1);

echo str_pad($difference, 2, "0", STR_PAD_LEFT);//04
?>

<?php 
$difference = 234;

echo str_pad($difference, 2, "0", STR_PAD_LEFT);//234
?>
于 2012-05-07T02:01:06.837 回答