当前位置: 首页 > 知识库问答 >
问题:

php如何保留整数前面的0?

华昕
2023-05-04
$a=1;
$b=2;
$c=03;
echo $a.$c.$b;

结果是:132
期望结果:1032

共有2个答案

鲁烨熠
2023-05-04

你可以用 str_pad() 函数:


<?php
$a = 1;
$b = 2;
$c = 3;

$a_str = str_pad($a, 2, "0", STR_PAD_LEFT);
$b_str = str_pad($b, 2, "0", STR_PAD_LEFT);
$c_str = str_pad($c, 2, "0", STR_PAD_LEFT);

echo $a_str . $c_str . $b_str;
?>
公西浩
2023-05-04

不要想着瞎搞,在多数编程语言中,0 开头的整数会被当成八进制来处理,而显示的时候又会被转成十进制,比如这样:

$a = 1;
$b = 2;
$c = 013;
echo $a . $c . $b;
  • https://3v4l.org/gJXVi#v8.2.3

你以为结果会是什么? 1132 ?错,实际结果是 1112,因为 013 会被当成八进制处理,最后转成十进制的 11


你这个需求,就老老实实用字符串。

 类似资料:
  • 问题内容: 下面是一段代码,它是功能解密和加密程序的一部分。 如您所见,两个变量i和j首先被视为字符串,以便在任何一位数字前添加一个0(作为字符串)。然后将这些变量组合成一个四位数的数字(仍为字符串)。在程序的后面,在函数中使用创建的数字,因为s删除所有前导零。 我的问题:是否可以强制python保持s的前导零?我已经并且继续在线搜索。 编辑 为了帮助人们,我将程序的加密部分包括在内。这就是问题所

  • 我正在使用十六进制值,我需要保留值的符号。我想知道是否有人有一种创造性的方法来保留整数的符号,而不使用?由于大小限制,我无法使用<code>BigInteger 我有一串十六进制值,如下所示: 我没有正确理解故障吗?失败似乎是由于设置了符号位。

  • 我的短信有点小问题。在文本的某些部分,我使用了' '来确保该特定单词不会中断(或移动)到新行。举个例子,我做了这样的事情: 所以从理论上讲,这个文本('-is')不应该以一个单词的形式出现在一个新的行中,对吧?我想那是对的。但是...这个技巧给我带来了一个问题,就是在“-”和“is”之间增加了很大的空格...而且我当然不想有那个“大空位”。我将给出结果示例: 如你所见,有一个巨大的空间。所以,我的

  • 问题内容: 我是AngularJS的新手,正在尝试为自己构建一个简单的小应用程序。我有正在使用抓取的应用程序的JSON数据,并且该数据在多个视图/路由之间应该相同。但是,当我转到新路线时,JSON数据(存储为)不再可用于新视图。我该怎么做才能将此数据传递到新视图,而无需再次获取?(本教程的电话目录应用程序每次都会根据我的判断重新获取此数据。) 据我了解,可以做到这一点,但似乎人们对此并不满意。如果

  • 然而,顺序是将示例5放在底部,而不是在其正确的位置。在阅读之后,我意识到对象键没有正确排序(按键排序JavaScript对象),并且JSON键不能是整数(按键排序JavaScript对象)。我需要保留对象顺序,而不是自动排序。原因是它的一个ID必须保持不变(所以没有数组替代)。 我是错过了一些简单的东西,还是需要重新思考/工作?

  • 问题内容: 如何设置Jenkins保留的一份特定工作的数量? 詹金斯保留了我们所有工作的最后30个版本。但是,对于特定的工作,我们希望保留60个版本,而不是30个。 我转到作业的配置页面,勾选“丢弃旧版本”,在“要保留的最大版本数”中输入“ 60”,保存作业配置,然后重新启动Jenkins。 进行此更改后,詹金斯仍然只保留30个工作版本。我究竟做错了什么? 相关问题:为什么只保留30个构建?(我认