在php中只读取文件中的行号

时间:2014-10-15 19:19:39

标签: php loops file-io

我试图从文本文件中读取偶数行。我知道模数(%)运算符,我可以将它放在一个循环中并获得所需的结果,但不知怎的,我无法弄清楚如何在这里使用它。

这是我的代码:

<?php    
$url   = "somedomain/something";
$lines = file('text.txt', FILE_IGNORE_NEW_LINES);

foreach ($lines as $line_num => $line) {

    echo "<br />\n" . "Line #<b>{$line_num}</b>  :" . (htmlspecialchars($line));
    $dom = new DOMDocument;
    $dom->loadHTMLFile($url . $line);
    foreach ($dom->getElementsByTagName('p') as $node) {
        // do stuff with $node
        echo $node->nodeValue, "\n";

    }
}    
?>

2 个答案:

答案 0 :(得分:1)

在行号上使用模运算符。如果它是0那么该行是偶数,如果它是1那么该行是奇数(这些行号是从零开始的 - 如果你想要一个基于计数,则交换它们)。然后使用continue语句跳过循环体的其余部分并转到下一行。

foreach ($lines as $line_num => $line) {
    if ($line_num % 2 == 1) {
        continue; // Skip odd lines
    }
    ...
}

答案 1 :(得分:0)

尝试

if(!($line_num % 2)){
    // your code
}