这是我的用于生成序列号的模型函数
public function getmax($field_name,$table_name){
$this->db->select_max($field_name);
$res1 = $this->db->get($table_name);
if ($res1->num_rows() > 0) {
$res2 = $res1->result_array();
}
$max = $res2[0][$field_name];
if($max == NULL) return 1; else return $max+1;
}
这是我的控制器功能
$CardNo = $this->general_model->getmax('card_number','digicardusers');
我要设置从00000000001开始的序列号。如何更改代码以获取11位数字的序列号。任何人都可以帮助
答案 0 :(得分:0)
假设您只是在寻找0'填充,请使用sprintf()
<?php
for ($i = 1; $i < 25; $i++) {
echo sprintf("%'.011d", $i).PHP_EOL;
}
00000000001
00000000002
00000000003
00000000004
00000000005
00000000006
00000000007
00000000008
00000000009
00000000010
00000000011
...
答案 1 :(得分:0)
您可以使用此功能,只需传递参数$ digit
function randomXDigit($digits = 11) {
return str_pad(rand(0, pow(10, $digits)-1), $digits, '0', STR_PAD_LEFT);
}