аватар Автор: Сергей Касаткин | 29 июня 2013 19:38

Статьи / PHP /

Как подсчитать количество строк в файле PHP?

Возможно, Вы уже столкнулись с задачей подсчёта общего количества строк в файле. Неважно, нужно подсчитать количество служебных записей в файле, узнать количество строк htaccess или записей txt-файла, хранящего в себе какие-либо данные. Указанные ниже способы решения подойдут для каждого случая.

Создадим функцию для подсчёта количество строк в файле PHP


Создаваемая функция будет использовать две встроенные:

1. file() в качестве аргумента принимает файл или путь к нему, а возвращает массив строк
2. count() подсчитывает количество элементов массива.

Теперь переходим к созданию файла с самой функцией. В корневой директории (вы можете на своё усмотрение выбрать другую) создаём отдельную папку include. В ней создадим файл будущей функции и назовём его functions.php. Далее вставляем в него указанный ниже код.

Код PHP (файл functions.php)

<?php 

function lines($file) 
    // в начале ищем сам файл. Может быть, путь к нему был некорректно указан 
    if(!file_exists($file))exit("Файл не найден"); 
     
    // рассмотрим файл как массив
    $file_arr = file($file); 
     
    // подсчитываем количество строк в массиве 
    $lines = count($file_arr); 
     
    // вывод результата работы функции 
    return $lines; 

echo lines("index.php"); // выводим число - количество строк в файле index.php

?>

Итак, файл с функцией готов. В корневой директории (папке) можем уже создать рабочий файл с любым названием (в примере его назвал example.php), а в нём данную функцию будем подключать следующим образом.

Код PHP (файл example.php)

<?php

    // здесь указываем путь к файлу с функцией
    include_once "include/functions.php"; // или "functions.php" если функция в той же папке, что и рабочий файл exemaple.php

    // в переменную $count_lines сохраняем количество строк (число)
    $count_lines = lines("index.php");
    
    // выводим результат работы функции подсчёта строк
    echo "Строк в файле: ".$count_lines; 
    
?> 

В результате отобразит примерно следующий текст

Строк в файле: 52
Можно рассмотреть пример короче без создания функции. В нём уже не будет никакой проверки на наличие файла

Код PHP (вставляете в любой файл php)

<?php
  $file = "file.txt"; // указываем сам файл и путь к нему
  $lines = count(file($file)); // высчитываем количество строк
  echo "В файле $file количество строк $lines"; // отображаем результат
?>

Пример результата

В файле file.txt количество строк 20
Спасибо за внимание!
 



Похожие статьи


Комментарии к статье (vk.com)