21.7 Jedes Wort einer Datei verarbeiten

Problem

Sie wollen mit jedem Wort einer Datei etwas machen.

Lösung

Lesen Sie mit fgets( ) jede Zeile ein, teilen Sie die Zeile in Wörter auf und verarbeiten Sie jedes Wort:

$fh = fopen('great-american-novel.txt','r') or die($php_errormsg);
while (! feof($fh)) {
    if ($s = fgets($fh,1048576)) {
        $words = preg_split('/\s+/',$s,-1,PREG_SPLIT_NO_EMPTY);
        // Wörter verarbeiten.
}
}
fclose($fh) or die($php_errormsg);

Diskussion

Hier sehen Sie, wie Sie die durchschnittliche Wortlänge einer Datei berechnen:

$word_count = $word_length = 0; if ($fh = fopen('great-american-novel.txt','r')) { while (! feof($fh)) { if ($s = fgets($fh,1048576)) { $words = preg_split('/\s+/',$s,-1,PREG_SPLIT_NO_EMPTY); foreach ($words as $word) { ...

Get PHP 5 Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.