【问题标题】:PHP string FormattingPHP 字符串格式化
【发布时间】:2014-04-17 08:21:13
【问题描述】:

使用 PHP 我想将数字 (7) 格式化为 6 位数字 000007

我已经通过 printf 函数完成了这项工作,但想将其存储在一个变量中,我该怎么做。

下面提到的代码不起作用,输出为 :000007 并在屏幕上打印:

$gensubjectid=printf("%06d\n", $origionalsubjectid);

建议。

【问题讨论】:

  • sprintf() 应该做你需要的
  • printf 返回输出字符串的长度
  • dude printf of sprintf not working 下面是合适的解决方案。 $输入 = 7; str_pad($input, 6, "0", STR_PAD_LEFT);

标签: php formatting


【解决方案1】:

使用sprintf - 它与printf 相同,但它返回格式化的字符串。

【讨论】:

    【解决方案2】:

    您可以使用:spirntf

    $unformattedNumber = 7;  
    $formattedNumber = sprintf('%06d', $unformattedNumber);
    

    或者你可以试试这个(str_pad):

    $input = 7;
    str_pad($input, 6, "0", STR_PAD_LEFT);
    

    【讨论】:

      【解决方案3】:

      使用 str_pad()。

      $invID = str_pad($invID, 10, '0', STR_PAD_LEFT);
      

      或者

      使用 sprintf:http://php.net/function.sprintf

      $number = 51;
      $number = sprintf('%10d',$number);
      print $number;
      // outputs 0000000051
      

      $数字 = 8051; $number = sprintf('%10d',$number); 打印$号; // 输出 0000008051

      【讨论】:

      • 这就是我想要得到的准确结果,因为我想要它真的很有帮助。
      猜你喜欢
      • 1970-01-01
      • 2011-08-29
      • 2016-02-24
      • 2018-05-20
      • 1970-01-01
      • 2010-10-22
      • 1970-01-01
      相关资源
      最近更新 更多