PHP 数字左侧自动补0


Posted in PHP onMarch 31, 2008
<?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 相关文章推荐
Zend公司全球首推PHP认证
Oct 09 PHP
对squid中refresh_pattern的一些理解和建议
Apr 17 PHP
php中的PHP_EOL换行符详细解析
Oct 26 PHP
PHP延迟静态绑定示例分享
Jun 22 PHP
thinkphp的静态缓存用法分析
Nov 29 PHP
php cookie 详解使用实例
Nov 03 PHP
PHP运行模式汇总
Nov 06 PHP
PHP实现深度优先搜索算法(DFS,Depth First Search)详解
Sep 16 PHP
基于php双引号中访问数组元素报错的解决方法
Feb 01 PHP
PHP验证类的封装与使用方法详解
Jan 10 PHP
PHP中Session ID的实现原理实例分析
Aug 17 PHP
浅谈laravel-admin的sortable和orderby使用问题
Oct 03 PHP
加强版phplib的DB类
Mar 31 #PHP
PHP截取汉字乱码问题解决方法mb_substr函数的应用
Mar 30 #PHP
PHP5中的时间相差8小时的解决办法
Mar 28 #PHP
php heredoc和phpwind的模板技术使用方法小结
Mar 28 #PHP
WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0配置
Mar 28 #PHP
Mysql的GROUP_CONCAT()函数使用方法
Mar 28 #PHP
php中文字符截取防乱码
Mar 28 #PHP
You might like
php file_get_contents函数轻松采集html数据
2010/04/22 PHP
Thinkphp多文件上传实现方法
2014/10/31 PHP
JavaScript实现删除电脑的关机键
2016/07/26 PHP
JQuery autocomplete 使用手册
2010/04/01 Javascript
jQuery中Dom的基本操作小结
2014/01/23 Javascript
使用focus方法让光标默认停留在INPUT框
2014/07/29 Javascript
基于jQuery实现多层次的手风琴效果附源码
2015/09/21 Javascript
js+css实现回到顶部按钮(back to top)
2016/03/02 Javascript
动态加载css方法实现和深入解析
2017/01/18 Javascript
js实现瀑布流效果(自动生成新的内容)
2017/03/16 Javascript
vue element-ui 绑定@keyup事件无效的解决方法
2018/03/09 Javascript
echarts同一页面中四个图表切换的js数据交互方法示例
2018/07/03 Javascript
使用post方法实现json往返传输数据的方法
2019/03/30 Javascript
vue单页面在微信下只能分享落地页的解决方案
2019/04/15 Javascript
用Node写一条配置环境的指令
2019/11/14 Javascript
原生js实现日历效果
2020/03/02 Javascript
VUE实现吸底按钮
2021/03/04 Vue.js
[52:14]VG vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
python生成excel的实例代码
2017/11/08 Python
python实现共轭梯度法
2019/07/03 Python
Django框架 Pagination分页实现代码实例
2019/09/04 Python
解决django中form表单设置action后无法回到原页面的问题
2020/03/13 Python
Mountain Warehouse澳大利亚官网:欧洲家庭户外品牌倡导者
2016/11/20 全球购物
BISSELL官网:北美吸尘器第一品牌
2019/03/14 全球购物
一个C/C++编程面试题
2013/11/10 面试题
经典商业广告词
2014/03/13 职场文书
小学校长汇报材料
2014/08/20 职场文书
群众路线剖析材料范文
2014/10/09 职场文书
股东授权委托书
2014/10/15 职场文书
预备党员群众路线思想汇报2014
2014/10/25 职场文书
学生违反校规检讨书
2014/10/28 职场文书
2014年人大工作总结
2014/12/10 职场文书
全国法制宣传日活动总结
2015/05/05 职场文书
学雷锋献爱心活动总结
2015/05/11 职场文书
如何让2019年上半年的工作总结更出色!
2019/07/01 职场文书
《天使的翅膀》读后感3篇
2019/12/20 职场文书