|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2000-10-15 11:25 UTC] lyric@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 20:00:01 2025 UTC |
<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>