当前位置: 首页 > 面试题库 >

PHP即时在单位数字前添加前导零。

翁翰
2023-03-14
问题内容

PHP-是否有一种快速,即时的方法来测试单个字符串,然后在前导零之前添加?

例:

$year = 11;
$month = 4;

$stamp = $year.add_single_zero_if_needed($month);  // Imaginary function

echo $stamp; // 1104

问题答案:

您可以使用sprintf:http :
//php.net/manual/en/function.sprintf.php

<?php
$num = 4;
$num_padded = sprintf("%02d", $num);
echo $num_padded; // returns 04
?>

如果少于要求的字符数,它将仅添加零。

编辑:@FelipeAls指出:

处理数字时,应使用%d(而不是%s),尤其是在有可能出现负数的情况下。如果您仅使用正数,则两种方法都可以正常工作。

例如:

sprintf("%04s", 10);返回0010
sprintf("%04s", -10);返回0-10

如:

sprintf("%04d", 10);返回0010
sprintf("%04d", -10);返回-010



 类似资料:
  • 问题内容: 有没有更好的方法来获得此结果?如果num的位数比位数多,则此函数将失败,并且我认为它应该在库中的某个位置(例如Integer.toString(x,“%3d”)等) 问题答案: tring.format(http://java.sun.com/j2se/1.5.0/docs/api/java/util/Formatter.html#syntax) 在你的情况下,它将是: 0 - to

  • 问题内容: 我有一个字段是,保持日期值,我从转换到。 有些记录有八个字符,有些记录有七个字符。我想通过将前导零添加到具有7的前导零来使它们具有相同的长度。 8个字符的示例:12162003 7个字符的示例:5072004(需要前导零) 查询: 问题答案: 可以在更多情况下使用的功能是REPLICATE。它将一个X值的次数连接到一个字符串。 这将花费您的生日的长度,将其减去8,然后在前面放置多个前导

  • 问题内容: 我有一个包含值的变量。 我希望它准确包含8位数字,即。 是否有PHP函数呢? 问题答案: 用途: 另外,您也可以使用:

  • 问题内容: 我目前正在用Java开发拍卖程序,我正在尝试确定截止日期,但是我的日期不断出现,因为(7/04/2013 11:22),有没有办法使用String.format添加前导零到今天是一位数字的日子? 稍后当我尝试对它进行子字符串处理时,这会导致我出现问题,并且它的长度少于17个字符。 预先感谢詹姆斯。 问题答案: 只需使用SimpleDateFormat

  • 需要向列值(varchar)添加前导零,并在同一个表中更新它。例如:431 as 000431,5431 as 005431,64531 as 064531,基本上我需要用零替换数据,使其为6位。这是sybase ase。 谢啦

  • 问题内容: 您可以使用该函数显示以零开头的整数吗? 输入示例: 所需的输出: 我知道和基于的格式(例如)都可以实现这一点。但是,我希望使用一种解决方案,以保持我的代码干净且一致(我还使用datetime属性格式化字符串),并扩展我对Format Specification Mini- Language的了解 。 问题答案: “{0:0>3}”.format(1) ‘001’ >>> “{0:0>3