加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2023-04-08 14:11:59 所属栏目:PHP教程 来源:
导读:如果要自动生成学号,自动生成某某编号,就像这样的形式“d0000009”、“d0000027”时,那么就会面临一个问题,怎么把左边用0补齐成这样8位数的编码呢?我想到了两种方法实现这个功能.

方法一:
如果要自动生成学号,自动生成某某编号,就像这样的形式“d0000009”、“d0000027”时,那么就会面临一个问题,怎么把左边用0补齐成这样8位数的编码呢?我想到了两种方法实现这个功能.
 
方法一:
 
先构造一个数字10000000,千万,也就是一个1,7个0,然后加上当前的编号(比如是3),那么就得到 10000003,用字符串截取 substr('10000003',1,7)后就得到0000003,最后在与“d”拼接,就得到了最终的编号d0000003。源码如下:
 
<?php
 
 $num = 3;
 
 $temp_num = 10000000;
 
 $new_num = $num + $temp_num;
 
 $real_num = "d".substr($new_num,1,7); //即截取掉最前面的“1”
 
 echo $real_num;
 
?>
 
方法二:
 
测出当前编号(比如是3)的长度strlen('3')=1,用要生成编号的总长度减去当前编号长度,得到需要填充0的个数,然后再用for循环填充0即可,源码如下:
 
<?php
 
 $num = 3;
 
 $bit = 7;//产生7位数的数字编号
 
 $num_len = strlen($num);
 
 $zero = '';
 
 for($i=$num_len; $i<$bit; $i++){
 
  $zero .= "0";
 
 }
 
 $real_num = "d".$zero.$num;
 
 echo $real_num;
 
?>
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!