PHP 给数字前面补零 ,固定位数补0
在设计唯一编号的时候,需要固定位数的数字,比如需要固定四位数格式:
比如:
YSZC 后面的 0001,以下一组数字,如何让它自增呢?
1->0001
56->0056
288->0288
1992->1992
登录后复制
我们可以使用 php 内置函数 str_pad () 函数把字符串填充为新的长度。
str_pad(string,length,pad_string,pad_type)
//参数 描述
string //必需。规定要填充的字符串。
length //必需。规定新的字符串长度。如果该值小于字符串的原始长度,则不进行任何操作。
pad_string //可选。规定供填充使用的字符串。默认是空白。
pad_type //可选。规定填充字符串的哪边。
//可能的值:
STR_PAD_BOTH - //填充字符串的两侧。如果不是偶数,则右侧获得额外的填充。
STR_PAD_LEFT - //填充字符串的左侧。
STR_PAD_RIGHT - //填充字符串的右侧。默认。
登录后复制
例子,我写了一个方法,先判断数据表里面有没有数据,没有就初始化 0001,否则调用自增 ID。
/**
* @desc 协议编号
* @author 磊丰
* @Date 2021/12/1 16:23
* @param $num
* @return string
*/
public function inc_privacy_no($num)
{
$start = "0001";
$data = 表::find('id'); //这里是查询表里的一条最新的sql数据,自己写
if(empty($data)){
return $num.$start;
}
$data_no = str_pad(($data['id']+1),4,"0",STR_PAD_LEFT);
return $num.$data_no;
}
登录后复制
调用方法
$this->inc_privacy_no("YSZC")
登录后复制
推荐学习:《PHP视频教程》
以上就是用PHP给指定的数字前面补零的详细内容,更多请关注悠悠之家其它相关文章!
发表评论 取消回复