1
我正在試驗一些php文件/流功能。而且我遇到了fread的麻煩。php第一次fseek在流然後fread?
該數據發送到一個PHP腳本:
baz=bomb&foo=bar&baz=bomb&foo=bar&foo=bar&baz=bomb
這腳本運行這段代碼:
<php
$fp = fopen("php://input", "rb");
fseek($fp, 3, SEEK_SET);
echo "<br>ftell: ".ftell($fp)."<br>";
echo "<br>fread(resource, 4): ".fread($fp, 4)."<br>";
fclose($fp);
輸出顯示:
ftell: 3
fread(resource, 4): baz=
什麼,我期待的是它顯示的是:
=bom
爲什麼fread會將指針設置爲流的開頭,然後讀取?尋找低谷而不能從某個特定位置讀取的意義何在?
我使用的PHP版本是: 7.0.8在Windows機器上。
只是想知道爲什麼不'$ _POST'或'parse_str()'? – AbraCadaver
我正在準備自己實現php-fig psr-7 streaminterface。這是學習構建現代php框架的一部分。 – ITGuy1990
你確定無論什麼流數據到PHP是不是在開始添加數據?當你對'fseek()'使用不同的偏移時會發生什麼? –