我如何在PHP中读取前5行?

时间:2016-12-26 03:01:30

标签: php file

我正在尝试读取txt文件中的前5行代码块,请问我该怎么做

我有这个PHP代码只能获得第一行

<?php
$file = 'example.txt';
$f = fopen($file, 'r');
$line = fgets($f);
    while (($line = fgets( $f)) !== false) {
            for ($list = 1; $list < 6; $list++){
                $codeline= htmlentities($line );
            }
        }   
fclose($f); 
?>

3 个答案:

答案 0 :(得分:2)

您可以使用for循环:

for ($x = 1; $x < 6; $x++) {
    $line = fgets($f);
}

答案 1 :(得分:0)

更简单:

lipo -create libSignatureLibary_armv6.a libSignatureLibary_armv7.a libSignatureLibary_i368.a -output libSignatureLibary.a

来自@ paul-denisevich的get the first 3 lines of a text file in php

答案 2 :(得分:0)

逐行打开并阅读文件:

items = collection.aggregate([
        {"$match": {}},
        {"$project": {
            'temp_score': {
                "$add": ["$total_score", 100],
            },
            'temp_votes': {
                "$add": ["$total_votes", 20],
            },
            'weight': {
                "$divide": ["$temp_score", "$temp_votes"]
            }

            }
        }
    ])

在这里,我正在将变量$file = fopen( "/path/to/file.txt", "r" ); $index=0; while ((( $line = fgets( $file )) !== false) && ( $index++ < 5 )) { echo $line; } fclose( $file ); 初始化为 0

在while循环中,我们将使用index读取文件的下一行,并将其分配给变量fgets。在读完该行之后,除了增加索引的值之外,我们还将检查line的值是否小于5,我们所需的行数。

一旦指数值达到&gt; 5,循环将退出,文件流将被关闭。

使用fopenfgets优于file之类的优点是,后者会将文件的全部内容加载到内存中 - 即使您不打算使用整件事。

使用multi line filethe above code将打印出前五行。

  

这是一条多行