SeazoN
Guest
file VS fread&preg_split
Прочитал одну статью
http://php.spb.ru/php/speed.html
Значит там для извлечения строк в массив рулит однозначно file()
Хочу оспорить. Есть и др. варианты.
Там не рассматривался такой вариант
time index ex time %
Start 1032607579.38473600 - 0.00%
fread 1032607579.52533100 0.140595 23.79%
file 1032607579.97568400 0.450353 76.19%
Stop 1032607579.97580900 0.000125 0.02%
total - 0.591073 100.00%
А тормознутость file объясняется скорей всего тем что она позволяет читать и с урла, где определить размер невозможно, приходится ставить условие и читать порциями
PS access.log 4Мб
Прочитал одну статью
http://php.spb.ru/php/speed.html
Значит там для извлечения строк в массив рулит однозначно file()
Хочу оспорить. Есть и др. варианты.
Там не рассматривался такой вариант
PHP:
<?php
require("Benchmark/Timer.php");
$time = new Benchmark_Timer;
$time -> setMarker('Start');;
$fp = fopen("access.log", "r");
$s = preg_split("/\n/", fread($fp, filesize("access.log") ) ) ;
fclose($fp);
$time -> setMarker('fread');
$s = file("access.log");
$time -> setMarker('file');
$time -> setMarker('Stop');
$time -> display();
?>
time index ex time %
Start 1032607579.38473600 - 0.00%
fread 1032607579.52533100 0.140595 23.79%
file 1032607579.97568400 0.450353 76.19%
Stop 1032607579.97580900 0.000125 0.02%
total - 0.591073 100.00%
А тормознутость file объясняется скорей всего тем что она позволяет читать и с урла, где определить размер невозможно, приходится ставить условие и читать порциями
PS access.log 4Мб