これをより明確にするために、コード サンプルを示します。
$file = fopen('filename.ext', 'rb');
// Assume $pos has been declared
// method 1
fseek($file, $pos);
$parsed = fread($file, 2);
// method 2
while (!feof($file)) {
$data = fread($file, 1000000);
}
$data = bin2hex($data);
$parsed = substr($data, $pos, 2);
$fclose($file);
メソッド 1 には約 40 個の fread() があります (おそらく 15 個の fseek()) とメソッド 2 には 1 個の fread() があります。合計バイト数 (すべてファイルの中央で比較的接近しています)。
では、どのコードのパフォーマンスが向上するのでしょうか? どのコードを使用するのがより理にかなっていますか? 簡単な説明をいただければ幸いです。