0

I want to generate a series of serial numbers like CHN000001,CHN000002,CHN000003, etc using PHP. If there are 100 numbers, then the last one should be like CHN000100. If it's 1000, then the serial should look like CHN001000. Can anyone tell me how to implement the "for" loop for this process?

Michael Petrotta
  • 59,888
  • 27
  • 145
  • 179
Basim Sherif
  • 5,384
  • 7
  • 48
  • 90
  • 1
    `+` - is how to add numbers in php, `.` - is how to concatenate strings in php, and here is [`for`](http://nz.php.net/manual/en/control-structures.for.php) documentation – zerkms Jul 20 '12 at 04:44
  • What about fancying things up a little? You could encode your serial numbers in [base 36](http://en.wikipedia.org/wiki/Base_36) or including a check-digit for [Luhn validation](http://en.wikipedia.org/wiki/Luhn_algorithm)? – ghoti Jul 20 '12 at 04:53
  • 2
    Er, insane? Really? Did you SEE your question? What code are we supposed to help you fix? – ghoti Jul 20 '12 at 04:54
  • 1
    Thanks! I'll continue to practice my insanity in an effort to improve the quality of StackOverflow content. BTW, you've had multiple downvotes, offset by a couple of upvotes. – ghoti Jul 20 '12 at 04:59

2 Answers2

10

The following should work. The function you use is sprintf

for($i=1;$i<=100;$i++)
echo sprintf("CHN%06d", $i)." ";
Anirudh Ramanathan
  • 46,179
  • 22
  • 132
  • 191
5
$x = 0;
while ($x <= 999999)
{
    $numZero = 6 - strlen($x);
    echo 'CHN'.str_repeat('0', $numZero).$x;
    $x++;
}
Stegrex
  • 4,004
  • 1
  • 17
  • 19