加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP – 使用前导零生成数字,从100开始

发布时间:2020-12-13 22:02:54 所属栏目:PHP教程 来源:网络整理
导读:我想有一个函数来生成从“000100”开始的数字. 现在我有以下功能,允许我生成带前导零的数字. 我如何修改它以满足我的需求? function lz( $aNumber,$intPart,$floatPart=NULL,$dec_point=NULL,$thousands_sep=NULL) { $formattedNumber = $aNumber; if (!is_
我想有一个函数来生成从“000100”开始的数字.

现在我有以下功能,允许我生成带前导零的数字.

我如何修改它以满足我的需求?

function lz( $aNumber,$intPart,$floatPart=NULL,$dec_point=NULL,$thousands_sep=NULL) 
{     
    $formattedNumber = $aNumber;
    if (!is_null($floatPart)) 
    {  
        $formattedNumber = number_format($formattedNumber,$floatPart,$dec_point,$thousands_sep);
    }

    $formattedNumber = str_repeat("0",($intPart + -1 - floor(log10($formattedNumber)))).$formattedNumber;
    return $formattedNumber;
}

示例:已下达新订单且订单ID为“19”.最终订单号必须为000119.

谢谢!

解决方法

为什么不使用单个printf:

printf("%06d",$number);

See it

使用的格式说明符是:

% - Marks the beginning of the format specifier
0 - Ensures zero filling if number being printed has fewer digits
6 - Number of digits reserved
d - We are printing an integer

编辑:

从您的编辑看起来您希望在格式化之前将100添加到输入.如果是这样,你可以做到:

printf("%06d",$number+100);

(编辑:李大同)

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

    推荐文章
      热点阅读