2014-01-16 56 views
0

我想自动递增字母数字字符的ID,我想将其保存到我的数据库中。自动递增字母数字字符Id

例如:

Example-001 
Example-002 
Example-003 
Example-004 
Example-005 
+6

这个问题似乎是无关紧要的,因为OP没有指定他们的DBMS,并且在尝试解决他们的问题时没有表现出最小的努力。 – Kermit

+1

你在用什么? – Jompper

+0

在php上用mysql服务器bro – user3133377

回答

0

如果您正在寻找那些字符串末尾递增号码,你必须这样做在PHP中,试试这个:

$str1 = "Example-001"; 
$parts = explode("-",$str1); 
echo sprintf($parts[0] . '-%03d', $parts[1]+1); // Example-002 

不过我会猜测有更好的方法,可能在数据库级别完成你所需要的。您需要解释更多并发布更多代码。

例子:http://3v4l.org/V2R5m

+0

多谢弟 – user3133377

+0

其好的谢谢你很多 – user3133377

+0

注意:数组到字符串转换在 – user3133377

1

你真的不希望将其存储这样的 - 坏主意。

相反,只要有你在ID INT AUTO_INCREMENT你的MySQL,并完成类似

<?php echo "$dbRow['name']."-".$dbRow['id'];

或者,如果你是强迫症 -

while(strlen($dbRow['id'] < 3) { 
    $dbRow['id'] = "0".$dbRow['id']; 
} 
0

我不完全明白你的意思,但由于您将其标记为PHP,并且您在问“如何自动增加字母数字字符的ID”,因此您可以使用以下解决方案:

for ($i=0; $i<=10; $i++){ 
    $number = str_pad($i, 3, "0", STR_PAD_LEFT); 
    echo "Example-$number <br />"; 
} 

输出:

Example-000 
Example-001 
Example-002 
Example-003 
Example-004 
Etc... 

不仅是它增加的数量,但它确实是自动十岁上下