我正在運行64位Ubuntu Linux。 php也是64位的。我正在嘗試使用fscanf從文件中讀取整數。看來fscanf無法掃描超過32位的整數。看到示範波紋管。通過(f | v | s)scanf函數讀取PHP_INT_MAX或接近值
var_dump(
$a = PHP_INT_MAX,
--$a,
(string)$a,
sscanf((string)$a, "%u"),
PHP_INT_SIZE
);
輸出
int(9223372036854775807)
int(9223372036854775806)
string(19) "9223372036854775806"
array(1) {
[0]=>
string(10) "4294967294"
}
int(8)
看到,64位整數運算的作品!它只是sscanf函數不起作用。可能是我錯過了適當的格式。
我如何使用scanf讀取PHP中的64位整數?格式是什麼?
仍然沒有答案! – 2012-03-12 11:27:24
PHP版本? [Bug#47842 sscanf()不支持64位值](https://bugs.php.net/bug.php?id=47842) – Leigh 2012-03-12 11:51:17