使用php从文件中获取指定的行

时间:2015-12-16 15:20:09

标签: php

如何从文件中获取指定的行

$file_handle = fopen("file.txt", "rb");

while (!feof($file_handle) ) {
    $line_of_text = fgets($file_handle);
    $parts = explode(',', $line_of_text);

    //from line   01 to line 100  echo "Lines 1";
    //from line   100 to line 200  echo "Lines 2";
    //from line   400 to line 1000  do somthing
}       

fclose($file_handle);

我需要这个输出

  

//从第400行到第1000行做某事

     

//从第100行到第200行做某事

2 个答案:

答案 0 :(得分:1)

问题有点模糊。但如果$parts变量是您保留行的位置,那么在这种情况下,您可以使用函数array_slice来仅选择您感兴趣的行。

例如:

$parts = file('yourfile.txt');
$parts1to100 = array_slice($parts, 1, 100);
$parts100to400 = array_slice($parts, 100, 300);
$parts400to1000 = array_slice($parts, 400, 600);

如果您需要更多单独的部分,那么这将是一个不同的情况,并且可能更好地创建一个单独的函数,该函数接受某些值并返回所需的部分而不依赖于多个变量。但那是一个不同的故事。

答案 1 :(得分:0)

您可以使用file功能将文件的每一行拉到一个数组中。然后使用for循环迭代所需的行。

示例:

$lines = file('yourfile'); 
for($i =399; $i < 1000; $i++){ 
     echo $lines[$i];
}