Задать вопрос
Frontend777
@Frontend777
Ubuнтер, php разраб, Wordпрессер, человек

Как посчитать количество определённых строк в файле?

Код:
<?php
  $file = "logs/images.example.ru.error.log"; // указываем сам файл и путь к нему
  $lines = count(file($file)); // высчитываем количество ошибок
  echo "В файле $file количество ошибок $lines"; // отображаем результат
  
  $file2 = "logs/images.ineeds.ru.error.log.1"; // указываем сам файл и путь к нему
  $lines2 = count(file($file)); // высчитываем количество ошибок
  echo "В файле $file2 количество ошибок $lines2"; // отображаем результат
?>

И мне надо что-бы программа считала количество строк начинающихся на Fatal error,Содержат Syntax error, Not Fount И выдавала сколько их в файле содержатся. То-есть
Fatal error-10(К примеру) ,Syntax error-3, Not Fount-20.
Подскажите пожалуйста.
  • Вопрос задан
  • 46 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 2
FanatPHP
@FanatPHP
Чебуратор тега РНР
Не совсем по теме, но обчно я с логами работаю средствами консоли. получается очень быстро, гибко, удобно

grep -P -o 'Fatal error|Syntax error|Not Found' logs/images.*.error.log  | sort | uniq -c | sort -V


выгрепаем нужные ошибки, из всех файлов, сортируем, подсчитываем количество и для кроасоты сортируем по убыванию

А, ну и
wc -l logs/images.*.error.log
чтобы получить полное количество ошибок пофайлово, если нужно
Ответ написан
Комментировать
@Nc_Soft
зачем для этого php?
cat images.example.ru.error.log | grep '^Fatal error' | wc -l
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы