可以使用fgets
或者 stream_get_line
,但是 stream_get_line
速度更快。
在循环中可以配合使用 usleep(2000000);
参考代码如下:
<?php
$handle = @fopen("/tmp/inputfile.txt", "r");
if ($handle) {
while (!feof($handle)) {
$buffer = fgets($handle, 4096);
echo $buffer;
}
fclose($handle);
}
?>
<?php
// reads 10,000 lines in 27 seconds
while (!feof($handle)) {
$line = fgets($handle, 1000000);
}
?>
vs.
<?php
// reads 10,000 lines in 0.5 seconds
while (!feof($handle)) {
$line = stream_get_line($handle, 1000000, "\n");
}
?>
再有:
<?php
// Current time
echo date('h:i:s') . "\n";
// wait for 2 seconds
usleep(2000000);
// back!
echo date('h:i:s') . "\n";
?>