- 2008-03-16 (Sun) 16:26
- Uncategorized

誰かこのPHPの挙動を説明してください・・・。ThriftのPHPライブラリが動かなかったので見つけた。
- 参考: unpack
- 追記: バグらしい thanks to mizunonさん
サンプルコード
pficore% cat hoge.php
<?php
$v1 = 132;
$d = pack("N", $v1);
$v2 = unpack("N", $d);
print_r($v2);
$unpacked = unpack('nhigh/nlow', $d);
$v2 = ($unpacked['high'] << 16) + $unpacked['low'];
print_r($v2)
?>
PHP v5.2.1
pficore% php --version PHP 5.2.1 (cli) (built: Nov 28 2007 23:22:01) Copyright (c) 1997-2007 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies pficore% php hoge.php Array ( [1] => -2147483516 ) 132
PHP v4.3.9
[web at pfiweb1 ~]$ php --version PHP 4.3.9 (cgi) (built: May 10 2007 05:09:26) Copyright (c) 1997-2004 The PHP Group Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies [web at pfiweb1 ~]$ php hoge.php Array ( [1] => 132 ) 132
Similar Posts:
- Newer: PHP higixi
- Older: Japan CUDA カンファレンス 2008
Comments:2
- mizunon 08-03-16 (Sun) 17:47
-
5.2.1の64bit環境バグ♥
http://bugs.php.net/bug.php?id=40749 - kzk 08-03-17 (Mon) 4:47
-
ひぎぃバグですか♥ 情報ありがとうございます。
うーんPHPのバグだったらthriftの方で対応してくれなさそうだから、黙ってよう…。
# もしやmizunonさんも踏まれたのかなw
Trackbacks:0
- Trackback URL for this entry
- http://kzk9.net/blog/2008/03/php_higixi.html/trackback
- Listed below are links to weblogs that reference
- PHP higixi from moratorium
