title: PHP increment to 10 digits number for 10000 times get inaccurate results
body: <p>I have a script trying to increment value for 10000 times but it does not increment properly after certain numbers.</p>
  
  <pre><code>$number = 2147480001;
  $number_length = 10;
  for ($i = 0; $i &lt; 10000; $i++){ 
    $number++;
    $number = sprintf("%0".$number_length."d", $number);
    echo $number."\n";
  }
  </code></pre>
  
  <p>The result returned like this:</p>
  
  <p>...... 2147483645 2147483646 2147483647 -2147483648 -2147483647 -2147483646 ......</p>
  
  <p>Can I know why it suddenly turns to negative value?</p>