在php中用两位数递增数字[重复]

Posted

技术标签:

【中文标题】在php中用两位数递增数字[重复]【英文标题】:Incrementing numbers with double digits in php [duplicate] 【发布时间】:2015-03-18 16:31:45 【问题描述】:

如果数字小于 10,我想用两位数递增数字

这是我迄今为止尝试过的

$i = 1;

echo $i++;

结果是 1,2,3,4,5,6 以此类推

然后我尝试添加一个条件

$i = 1;

    if ($i++<10)    
     echo "0".$i++;
    else
     echo $i++;
    

工作但跳过数字 2、4、6、8 等等。

谁能告诉我正确的做法?

【问题讨论】:

您将$i 增加两次。 只使用str_pad 见:php.net/manual/en/function.str-pad.php 【参考方案1】:

如果条件只存在于前导零,您可以通过以下方式更轻松地做到这一点:

<?php

    $i = 10;
    printf("%02d", $i++);

?>

【讨论】:

第二行可以更简单,将echo()sprintf()(格式化字符串并返回)替换为printf()(格式化字符串并输出)。 非常感谢它就像一个魅力。【参考方案2】:

如果你想在字符串前面添加一些内容:

echo str_pad($input, 2, "0", STR_PAD_LEFT); //see detailed information http://php.net/manual/en/function.str-pad.php

【讨论】:

【参考方案3】:

在第二个代码片段中,您将 $i 增加了两次,这就是为什么您只能得到偶数。

增加一个数字是一回事,使用特定格式呈现它是另一回事。不要混合它们。

保持简单:

// Increment $i
$i ++;

// Format it for display
if ($i < 10) 
    $text = '0'.$i;     // Prepend values smaller than 10 with a zero
 else 
    $text = $i;


// Display it
echo($text);

【讨论】:

或者,正如this answer 所解释的那样,使用sprintf() 而不是if 块。【参考方案4】:
<?php

  $i = 1;
  for($i=1;$i<15;)
    if($i<10)
      echo '0'.$i++."<br>";
    else
      echo $i++."<br>";
    
  

?>

【讨论】:

以上是关于在php中用两位数递增数字[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何显示两位数而不是一个 Twig [重复]

用0~7可以组成多少个没有重复数字,且能被

excel统计重复个数

在C#中强制保留两位小数[重复]

如何在 PHP 中找到所有 N 个单位数、非重复数字的总和?

在 UILabel 中查看带两位小数的数字 [重复]