Hi
I am having some problems with the 'pack' function. Some values just
doesnt come out right. For instance, 0xa0 turns into x81a0.
Here is some code I used for testing. It packs the value, prints it.
Then unpacks the value and prints it
# This is wrong, but note that unpack gives the correct value!
$v = 0xa0;
$x = pack ("n", $v);
echo $x . "***"; # 33184 (0x0081a0)
$y = unpack ("nfoo", $x);
echo $y["foo"] . "**"; # 160 (0xa0)
# These guys are ok
$v = 0x9;
$x = pack ("n", $v);
echo $x . "***"; # 9 (0x0009)
$y = unpack ("nfoo", $x);
echo $y["foo"] . "**"; # 9 (0x0009)
$v = 0x100;
$x = pack ("n", $v);
echo $x . "***"; # 256 (0x0100)
$y = unpack ("nfoo", $x);
echo $y["foo"] . "**"; # 256 (0x0100)
Any ideas?
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php