我的值为$title =10
,我想用01
减去它。所以我的代码是:
echo $minus = round(($title - 01),2);
我想要结果$minus = 09
但是这段代码不是这样的,它仍然有结果$minus=9
。请任何人帮助我,谢谢。
答案 0 :(得分:0)
问题是PHP没有强类型,round()
返回一个数字,它自动将前导零剥离。尝试:
$minus = "0" . round(($title - 01),2);
答案 1 :(得分:0)
PHP正在评估你的0前缀数字到它们的基值 - 04和01分别是4和1。
如果您希望使用前导0输出它们,请尝试使用number formatter或string padding或只是将它们附加到字符串“0”
答案 2 :(得分:0)
正在发生的事情是round()返回一个整数。这意味着它之前不会有任何0。如果您希望它在它之前返回0,请尝试
str_pad(round(($ title - 1),2),2,“0”);
这将使它总是在数字之前追加0,如果它只有1个数字,但如果它是10或15或其他什么,它将不会追加0
答案 3 :(得分:0)
echo str_pad(intval($title) - 1, 2, "0", STR_PAD_LEFT);
如果结果只有一个数字,这将用0填充结果;否则,它将无法填充。对于前导零,您可以用strlen($title)
答案 4 :(得分:0)
试试这个..
$i=04-01;
echo sprintf('%02s', $i);