Maison  >  Article  >  développement back-end  >  php récupère les N dernières lignes de données du fichier

php récupère les N dernières lignes de données du fichier

不言
不言original
2018-04-04 10:01:461854parcourir

Le contenu présenté dans cet article est constitué des N dernières lignes de données obtenues à partir du fichier par php. Maintenant, je le partage avec tout le monde, et je peux également donner une référence aux amis dans le besoin

Code source GitHub<.>Le code est basé sur les problématiques suivantes, Solution donnée :
Utilisez PHP pour écrire une fonction permettant d'obtenir les n dernières lignes d'un fichier texte. Elle doit être aussi efficace que possible et peut être utilisée sur toutes les plateformes

Ce que je comprends, c'est qu'elle peut être utilisée sur toutes les plateformes. Cela signifie que le fichier peut être utilisé sur la plate-forme Windows et qu'il existe un problème avec les terminateurs de ligne incohérents sur la plate-forme Linux. Nous n'avons pas reflété cette différence dans le code. Tous sont des codes sous le système Linux. Avez-vous encore besoin de comprendre les problèmes multiplateformes ?

<?phpheader("content-type:text/html;charset=utf-8");class GetFileLastNumRow{
    private $filePath;    private $fileMode = &#39;r&#39;;    private $rowNum = 3;    public function __construct(array $config)
    {
        foreach ($config as $key => $value) {            $this->$key = $value;
        }
    }    public function run()
    {
        try {            $handle = fopen($this->filePath, $this->fileMode);
            fseek($handle, -1, SEEK_END);            $contents = "";            $rowCount = 0;            do {                if (($str = fgetc($handle)) == "\n") {                    $rowCount++;
                }                $contents = $str.$contents;
                fseek($handle, -2, SEEK_CUR);
            } while ($rowCount < $this->rowNum);
            var_export(trim($contents, "\n"));
            fclose($handle);
        } catch(\Exception $e) {
            var_export($e->getMessage());
        }
    }
}class Test{
    public function run()
    {
        $filePath = &#39;./TestData/GetFileLastNumRow/test.data&#39;;        $getFileLastNumRow = new GetFileLastNumRow(compact(&#39;filePath&#39;));        $getFileLastNumRow->run();
    }
}$test = new Test();$test->run();
Recommandations associées :

Méthode PHP pour obtenir une colonne spécifiée dans un tableau

PHP obtient la méthode de l'adresse IP de l'utilisateur

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn