PHP 5.4.36 Released

SplFileObject::next

(PHP 5 >= 5.1.0)

SplFileObject::nextЧитает следующую строку

Описание

public void SplFileObject::next ( void )

Перемещается вперед к следующей строке в файле.

Список параметров

У этой функции нет параметров.

Возвращаемые значения

Эта функция не возвращает значения после выполнения.

Примеры

Пример #1 Пример использования SplFileObject::next()

<?php
// Читаем файл построчно
$file = new SplFileObject("misc.txt");
while (!
$file->eof()) {
    echo 
$file->current();
    
$file->next();
}
?>

Смотрите также

add a note add a note

User Contributed Notes 1 note

up
0
Jonnycake
19 days ago
Quick note when using next(), it appears that you have to already be at the end of the line in order for it to hop to the next one.  I realized this while attempting to do a lineCount implementaiton like the following:

<?php
 
function lineCount($file)
  {
    
$x=0;
     while(!
$file->eof()) {
         
$x++;
         
$file->next();
     }
     return
$x;
  }
 
$file=new SplFileObject("something");
  echo
lineCount($file);
?>

It ended up in an infinite loop.  The solution was to just call fgets()/current() in the loop, although it wasn't being used anywhere so the following works:

<?php
 
function lineCount($file)
  {
    
$x=0;
     while(!
$file->eof()) {
         
$file->current();
         
$x++;
         
$file->next();
     }
     return
$x;
  }
 
$file=new SplFileObject("something");
  echo
lineCount($file);
?>
To Top