您的位置:

php填补数字前后的0,php补零

本文目录一览:

PHP几种数字左侧自动补0

/*

介绍一下我写的一个方法。方法函数如下,这样当你要的结果001的话,方法:dispRepair('1',3,'0')

功能:补位函数

str:原字符串

type:类型,0为后补,1为前补

len:新字符串长度

msg:填补字符

*/

function dispRepair($str,$len,$msg,$type='1') {

  $length = $len - strlen($str);

  if($length1)return $str;

  if ($type == 1) {

    $str = str_repeat($msg,$length).$str;

  } else {

    $str .= str_repeat($msg,$length);

  }

  return $str;

}

php 中整数型自动补零且不能为空怎么设置

在php中有两个函数——至少有两个是否有其他的我还不知道,能够实现数字补零,str_pad(),sprintf()详细如下

str_pad

顾名思义这个函数是针对字符串来说的这个可以对指定的字符串填补任何其它的字符串

例如:str_pad(带填补的字符串,填补后的长度,填补字符串,填补位置)

其中填补后的长度必须是个正整数,填补位置有三个选项,

左边:STR_PAD_LEFT,

右边:STR_PAD_RIGHT,

两端:STR_PAD_BOTH

例如:

echo str_pad(1,8,”0″,STR_PAD_LEFT);

结果:00000001

echo str_pad(1,8,”0″,STR_PAD_RIGHT);

结果:10000000

echo str_pad(1,8,”0″,STR_PAD_BOTH);

结果:00010000

在上边的例子中值得注意的一个细节是,如果填补的位数是个奇数,例如例三中填补了7个0,右边优先。

再看补零的另外一种方法sprintf

这个函数学过c的都十分了解它,呵呵……

不过咱不说这么多,因为用起来实在太灵活了,以至于我基本不会用,不过在左边补零(或者在小数点后补零)用起来还是很方便的

先看左边补零

echo sprintf(”%05d”,1);

先说%05d的意思,用一个5位数的数字格式化后边的参数,如果不足5位就补零

运行结果是00005

再看小数点后补零

echo sprintf(”%01.3f”,1);

%01.3f的意思是说,用一个小数点后最少三位不足三位补零,小数点前最少一位,不足一位补零的浮点数格式化后边的参数

其运行结果是:1.000

php数组转换,数字前补0,如何处理,请指点,但不是指指点点,呵呵

可以使用php内置函数str_pad() 函数把字符串填充为新的长度。

str_pad(string,length,pad_string,pad_type)

参数

string //必需。规定要填充的字符串。

length //必需。规定新的字符串长度。如果该值小于字符串的原始长度,则不进行任何操作。

pad_string //可选。规定供填充使用的字符串。默认是空白。

pad_type //可选。规定填充字符串的哪边。

详细用法请参考:

php怎么把mysql里面的两位数字前面补一个0变成三位显示,如图

我大概明白的你的问题,有几个解决的办法

1, 该字段改成字符串类型

2. 如果该字段保证为3位, 该字段设置Zeroill

3. 页面输出的时候做处理, 100 补前缀

php 数组里的数字前补0,应该如果写?

思路给你提供一下 循环一下 然后strlen

如果为1则补0

补的方法有两种 所有的值写入新数组

或者 $value

php数字字符串位数不足补0 $a="1,10,8,25,34"; 想得到的效果:01,10,08,25,34 请问怎样实现

就用到一个函数:strlen(),判断字符串长度:如果长度为1的就用“0”和原string组装一下;如果长度为2就正常返回即可;