function get_line($file,$line) { $fp = fopen($file,'r'); $i = 0; while(!feof($fp)) { $i++; $c = fgets($fp); if($i==$line) { echo $c; break; } } }
この方法の効率はまだテストする必要があります
Apacheログファイル(450M)では
20行目の読み取りは非常に高速です0.001039981842041
200行目の読み取り0.0033199787139893
かかります20,000 行目を読み取るには 0.30908 799171448秒 約
20万行目の読み取り2.5622429847717秒は耐えられないレベルに達しました