发新话题
打印

PHP 数字左侧自动补0

本主题被作者加入到个人文集中

PHP 数字左侧自动补0

PHP 数字左侧自动补0,适用那些员工编号什么的
举例来说:员工的工号 xp001
虽然 MySQL 本身的字段设定成 zerofill 的属性时,会将不足位数的部份补上0,但是这个功能只能用在数字的字段上面。
所以必要的时候只好靠PHP来进行了。
复制内容到剪贴板
代码:

<?php
    $prefix = "xp";
    $sourceNumber = "1";
    $newNumber = substr(strval($sourceNumber+1000),1,3);
    echo "$prefix$newNumber";
?>
这个时候就会出现:xp001
如果要增加位数的话可以将1000加大,然后把3也加大。
举例:如果我要补上 "4个0" 第03行 就要变成这样。
复制内容到剪贴板
代码:
<?php
$newNumber = substr(strval($sourceNumber+100000),1,5);
?>
其实就是总共要显示几位数字,就把$sourceNumber+1后面补上多少个0,最后一个数字就直接改成显示几位数字
使用函数简介:
strval():转换成字符串函数,不适用数组和对象
substr(被截取的字符串,开始索引,截取长度):字符串截取函数

TOP

不错
小函数大家共享
交流QQ群2:16142493
智能手机软件下载
PHP新手不可错过一帖
PHP新手如何获得积分
论坛需要你,我们大家需要你!

TOP

函数str_pad()
本帖最近评分记录
  • 淡水河边 威望 +5 提醒得好,下次说多一点就更好了 ... 2007-9-15 13:37
我不是天使但我拥有天堂,我不是海豚但我翱翔海洋,我没有翅膀但我俯视阳光,我没有三叶草但我手捧希望...

TOP

引用:
原帖由 傲慢的上校 于 2007-9-14 15:18 发表
函数str_pad()
以前没注意这个函数。
来说说用法
string str_pad ( string $input, int $pad_length [, string $pad_string [, int $pad_type]] )
复制内容到剪贴板
代码:

<?php
$input = "Alien";
echo str_pad($input, 10);                      // produces "Alien     "
echo str_pad($input, 10, "-=", STR_PAD_LEFT);  // produces "-=-=-Alien"
echo str_pad($input, 10, "_", STR_PAD_BOTH);   // produces "__Alien___"
echo str_pad($input, 6 , "___");               // produces "Alien_"
?>
补齐字符串的长度.以pad_string 补.默认补在右边,如果STR_PAD_LEFT就补到左边,STR_PAD_BOTH两边一起补。
下次用str_pad,毕竟是内置的,肯定比自定义的快。

TOP

发新话题