Why does right shift in PHP return a negative number?
Posted
by Legend
on Stack Overflow
See other posts from Stack Overflow
or by Legend
Published on 2010-04-16T04:04:27Z
Indexed on
2010/04/16
4:33 UTC
Read the original article
Hit count: 241
I am trying to query a bittorrent tracker and am using unpack to get the list of IPs from the response. So, something like this:
$ip = unpack("N", $peers);
$ip_add = ($ip[1]>>24) . "." . (($ip[1]&0x00FF0000)>>16) . "." . (($ip[1]&0x0000FF00)>>8) . "." . ($ip[1]&0x000000FF);
But, for some reason, I am getting the following IP addresses when I print $ip_add:
117.254.136.66
121.219.20.250
-43.7.52.163
Does anyone know what could be going wrong?
© Stack Overflow or respective owner