[PHP-DEV] PHP 4.0 Bug #6678 Updated: Different behaviour of arithmetic operations on Linux PHP and Windows PHP From: Bug Database (php-dev <email protected>)
Date: 10/15/00

ID: 6678
Updated by: lyric
Reported By: info <email protected>
Status: Analyzed
Bug Type: Unknown/Other Function
Assigned To:
Comments:

Your problem is probably due to the size of the numeric datatype (which is system dependant). The number that you're passing is actually too big (ie: over 2 billion).

See http://www.php.net/manual/language.types.php

Previous Comments:
---------------------------------------------------------------------------

[2000-09-12 05:41:28] info <email protected>
<html>
<body>
<?

/* Fuction to turn an integer into an ip address */

function int2ip($int)
  {
    // There are 4 bytes to handle, so letīs go for it ....
    for ($i=0 ; $i < 4 ; $i++) {
 
     // Letīs leave only the first 8 bits, kill the rest and assign the value to an array element
      $bytes[$i] = $int & 0xFF;
   
     // Now move the remaining bits to the right and go on with the next byte ...
      $int = $int >> 8;
   
    }

    // The array containing the bits is joined to a string, the bytes separated by a dot
    $ip = "$bytes[3].$bytes[2].$bytes[1].$bytes[0]";
 
   return ($ip);
  }

print int2ip(3232235648);

/*
  Result should be 192.168.0.128. On WAMP it works fine,
  on LAMP it doesnīt.
  Maybe this oneīs not bug but Iīm too dump - still this "wrong" behaviour
  has been verfied on several Linux systems running Apache and PHP.
  The correct one has been verified on three Windows systems running
  Apache and PHP (latest)
*/

?>
</body>
</html>

---------------------------------------------------------------------------

Full Bug description available at: http://bugs.php.net/?id=6678

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: php-dev-unsubscribe <email protected>
For additional commands, e-mail: php-dev-help <email protected>
To contact the list administrators, e-mail: php-list-admin <email protected>