O'Reilly logo

PHP 5 Kochbuch, Third Edition by Stephan Schmidt, Ulrich Speidel, Matthias Brusdeylins, Carsten Lucke, Adam Trachtenberg, David Sklar

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

21.6 Die Zeilen, Absätze oder Datensätze in einer Datei zählen

Problem

Sie wollen die Zeilen, Absätze oder Datensätze in einer Datei zählen.

Lösung

Um Zeilen zu zählen, verwenden Sie fgets(). Da sie eine Zeile nach der anderen liest, können Sie zählen, wie oft sie aufgerufen wird, bevor das Dateiende erreicht ist:

$lines = 0;

if ($fh = fopen('orders.txt','r')) {
  while (! feof($fh)) {
    if (fgets($fh,1048576)) {
      $lines++;
    }
  }
}
print $lines;

Zum Zählen von Absätzen erhöhen Sie den Zähler nur, wenn Sie eine leere Zeile lesen:

$paragraphs = 0;

if ($fh = fopen('great-american-novel.txt','r')) {
  while (! feof($fh)) {
    $s = fgets($fh,1048576);
    if (("\n" == $s) || ("\r\n" == $s)) {
      $paragraphs++;
    }
  }
}
print $paragraphs;

Und um Datensätze zu zählen, erhöhen Sie ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required