如何在不增加或减少php中将数字值添加到值中

时间:2018-12-03 18:57:37

标签: php html forms

我想以这种格式将值发布到我的MySQL数据库中;

01, 02, 03... 011, 012, 013... 0101, 0102, 0103, 等等

(每个值前带有0)。

如果我这样做"01+1",我(可以理解)将获得值2而不是“ 02”。 有没有默认的php函数,让我设置默认字符数,还是有其他选择?

我正在使用laravel结合雄辩的语言和一些自己的功能;

$lastSKU = $data->GetData('get', 'products', 'filter')->max('SKU');
$newValue = $lastSKU+1;

谢谢。

1 个答案:

答案 0 :(得分:1)

听起来您可能不知道格式如何,如果前面总是有0,那么这样做很容易

$value = '0'. ( $value + 1 );

PHP会自动将其转换为括号之间的数字,并向其中添加一个字符串,它将再次变为字符串。

现在,如果您不预先知道长度或填充,但是您确实需要保留当前的填充,我建议使用类似的

$value = str_pad(($value + 1), strlen($value), '0', STR_PAD_LEFT);

编辑,str_pad如今有些慢,sprintf可以完成相同的技巧,但速度更快

$value = sprintf("%'.0" . strlen($value) . "d\n", ($value +1));