PHP 数字左侧自动补0
作者:bea
代码如下: <?php $sourceNumber="1"; $newNumber=substr(strval($sourceNumber+1000),1,3); echo"$newNumber"; ?> 这个时候就会出现:001 如果要增加位数的话可以将1000加大,然后把3也加大。 举例:如果我要补上"4个0"第03行就要变成这样。 代码如下: <?php $newNumber=substr(strval($sourceNumber+1
代码如下:
<?php
$sourceNumber = "1";
$newNumber = substr(strval($sourceNumber+1000),1,3);
echo "$newNumber";
?>
这个时候就会出现:001
如果要增加位数的话可以将1000加大,然后把3也加大。
举例:如果我要补上 "4个0" 第03行 就要变成这样。
代码如下:
<?php
$newNumber = substr(strval($sourceNumber+100000),1,5);
?>
其实就是总共要显示几位数字,就把$sourceNumber+1后面补上多少个0,最后一个数字就直接改成显示几位数字。
更好的方法:
string str_pad ( string $input, int $pad_length [, string $pad_string [, int $pad_type]] )
代码如下:
<?php
$input = "Alien";
echo str_pad($input, 10);
// produces "Alien "
echo str_pad($input, 10, "-=", STR_PAD_LEFT);
// produces "-=-=-Alien"
echo str_pad($input, 10, "_", STR_PAD_BOTH);
// produces "__Alien___"
echo str_pad($input, 6 , "___");
// produces "Alien_"
?>
补齐字符串的长度.以pad_string 补.默认补在右边,如果STR_PAD_LEFT就补到左边,STR_PAD_BOTH两边一起补。
下次用str_pad,毕竟是内置的,肯定比自定义的快。
/*
你上面的方法我觉得不怎么好,介绍一下我写的一个方法。方法函数如下,这样当你要的结果001的话,方法:dispRepair('1',3,'0')
功能:补位函数
str:原字符串
type:类型,0为后补,1为前补
len:新字符串长度
msg:填补字符
*/
代码如下:
function dispRepair($str,$len,$msg,$type='1') {
$length = $len - strlen($str);
if($length<1)return $str;
if ($type == 1) {
$str = str_repeat($msg,$length).$str;
} else {
$str .= str_repeat($msg,$length);
}
return $str;
}
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- PHP获取网卡地址的代码
- PHP防注入安全代码
- PHP中用header图片地址 简单隐藏图片源地址
- PHP中的extract的作用分析
- 如何在PHP程序中防止盗链
- php的access操作类
- php时间不正确的解决方法
- php Ajax乱码
- PHP提取中文首字母
- php出现Cannot modify header information问题的解决方法大全
- php md5下16位和32位的实现代码
- 用来给图片加水印的PHP类
- 在PHP中读取和写入WORD文档的代码
- 生成php程序的php代码
- 用php获取远程图片并把它保存到本地的代码
- 在php MYSQL中插入当前时间
- php读取30天之内的根据算法排序的代码
- PHP实现Socket服务器的代码
- mysql+php分页类(已测)