[笔记] PHP 如何给数字前面补零 ,固定位数补0

每天给你分享一个PHP基础知识点,希望能帮助到你,花5分钟时间看看。或许你早就知道如何用,或许对你有些许帮助,丰告网可是最后还是感谢你的关注

图片

巩固php基础,分享给你视频教程【PHP7.x入门到进阶,初学者直接获取!】,公众号里回复:20200202   免费领取提取码!

图片

在设计唯一编号的时候,需要固定位数的数字,比如需要固定四位数格式:

比如:

图片

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")

版权声明:本文为li49665原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。