当前位置:首页 > PHP教程 > php高级应用 > 列表

php位数不够自动0填充补齐的例子

发布:smiling 来源: PHP粉丝网  添加日期:2014-06-18 10:03:50 浏览: 评论:0 

如果要自动生成学号,自动生成某某编号,就像这样的形式“d0000009”、“d0000027”时,那么就会面临一个问题,怎么把左边用0补齐成这样8位数的编码呢?我想到了两种方法实现这个功能.

方法一:

先构造一个数字10000000,千万,也就是一个1,7个0,然后加上当前的编号(比如是3),那么就得到 10000003,用字符串截取 substr('10000003',1,7)后就得到0000003,最后在与“d”拼接,就得到了最终的编号d0000003。源码如下:

  1. <?php 
  2.  $num = 3; 
  3.  $temp_num = 10000000; 
  4.  $new_num = $num + $temp_num
  5.  $real_num = "d".substr($new_num,1,7); //即截取掉最前面的“1” 
  6.  echo $real_num
  7. ?> 

方法二:

测出当前编号(比如是3)的长度strlen('3')=1,用要生成编号的总长度减去当前编号长度,得到需要填充0的个数,然后再用for循环填充0即可,源码如下:

  1. <?php 
  2.  $num = 3; 
  3.  $bit = 7;//产生7位数的数字编号 
  4.  $num_len = strlen($num); 
  5.  $zero = ''
  6.  for($i=$num_len$i<$bit$i++){ 
  7.   $zero .= "0"
  8.  } 
  9.  $real_num = "d".$zero.$num
  10.  echo $real_num
  11. ?> 

Tags: php位数 自动填充补齐

分享到: