0
我有以下代碼:
<?php
$val = fread($fp,1);
echo 'bindec: '.bindec($val)."\n";
echo 'bin2hex: '.bin2hex($val)."\n";
echo 'bin2hex/hexdec: '.hexdec(bin2hex($val))."\n";
?>
讀取字節出現在我的十六進制編輯器爲0F
。我的輸出是這樣的:
bindec: 0
bin2hex: 0f
bin2hex/hexdec: 15
我的問題是,爲什麼bindec
返回0
?當然它應該返回15
?
您是否看到過有關'bindec'參數的PHP文檔警告,如果不是字符串,可能會導致「意外的結果」?你可以'var_dump($ val)'?文檔:http://us2.php.net/bindec – 2012-04-18 00:48:49
我做了,我檢查了「fread」的文檔頁面,它說它返回一個字符串...我認爲這可能是我的困惑產生的原因。 'bin2hex'和'hexdec'都表示它們也接受字符串。 – Alex 2012-04-18 00:54:30