PHPackages                             lander931/log-reader - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Logging &amp; Monitoring](/categories/logging)
4. /
5. lander931/log-reader

ActiveLibrary[Logging &amp; Monitoring](/categories/logging)

lander931/log-reader
====================

Log Reader

v1.0.0(7y ago)013MITPHPPHP &gt;=5.4

Since Aug 4Pushed 7y ago1 watchersCompare

[ Source](https://github.com/Lander931/log-reader)[ Packagist](https://packagist.org/packages/lander931/log-reader)[ Docs](https://github.com/Lander931/log-reader)[ RSS](/packages/lander931-log-reader/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependencies (1)Versions (4)Used By (0)

log-reader - Читатель логов
===========================

[](#log-reader---читатель-логов)

Описание
--------

[](#описание)

**log-reader** позволяет считывать лог файлы. В результате вы получаете массив, содержимое которого вы сами определили.

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

[](#пример-результата)

```
array(2) {
    [0] => object(LogEntity) {
        ["date"]    => "2018-01-01"
        ["time"]    => "15:00:00"
        ["message"] => "log 1"
    }
    [1] => object(LogEntity) {
        ["date"]    => "2018-01-01"
        ["time"]    => "15:00:05"
        ["message"] => "log 2"
    }
}

```

Объект LogEntity это пример, вы можете формировать любой результат, из любых своих объектов.

Установка
---------

[](#установка)

```
php composer require lander931/log-reader

```

Использование
-------------

[](#использование)

#### Пример исходного лога

[](#пример-исходного-лога)

```
2018-01-01 15:00:00 log 1
2018-01-01 15:00:05 log 2

```

### Чтение лога

[](#чтение-лога)

Передать в **LogReader::read** содержимое файла лога, и функцию разбиения лога на части, функция должна вернуть массив.

```
$reader = LogReader::read($log_content, function($text) {
    return explode("\n", $text);
})
```

### Фомирование результата

[](#фомирование-результата)

Для формирования результата, используйте ***buildEntries***. На вход, функция принимает текст одной записи лога. В функции вы должны обработать текст одной записи лога, сформировать и вернуть результат в любом виде (например объект или массив).

```
$reader->buildEntries(function ($log){
    $pattern = "/\[(\d{4}-\d{2}-\d{2}) (\d{2}:\d{2}:\d{2})\] (.+)/";
    preg_match_all($pattern, $log, $matches, PREG_SET_ORDER);

    $date = $matches[0][1];
    $time = $matches[0][2];
    $message = $matches[0][3];

    return new LogEntity($date, $time, $message);
});
```

### Получение результата

[](#получение-результата)

```
$res = $reader->getEntries();
```

Если вы не обрабатывали каждую запить лога, то вернётся массив разбитого на частии лога.

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~18 days

Total

3

Last Release

2806d ago

Major Versions

v0.1.0 → 1.x-dev2018-09-08

### Community

Maintainers

![](https://www.gravatar.com/avatar/f7bfc60474b0336d1ddcd9b1e77ef8524f3840c437b1b22524d37fec96f592ab?d=identicon)[Lander931](/maintainers/Lander931)

---

Top Contributors

[![Lander931](https://avatars.githubusercontent.com/u/18010781?v=4)](https://github.com/Lander931 "Lander931 (6 commits)")

---

Tags

loglog-readerlog parserlogreaderlogparsser

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/lander931-log-reader/health.svg)

```
[![Health](https://phpackages.com/badges/lander931-log-reader/health.svg)](https://phpackages.com/packages/lander931-log-reader)
```

###  Alternatives

[rap2hpoutre/laravel-log-viewer

A Laravel log reader

3.2k14.7M71](/packages/rap2hpoutre-laravel-log-viewer)[jackiedo/log-reader

An easy log reader and management tool for Laravel

151376.5k4](/packages/jackiedo-log-reader)[kriss/yii2-log-reader

Yii2 log reader

1340.1k1](/packages/kriss-yii2-log-reader)[melihovv/laravel-log-viewer

A Laravel log viewer

1231.5k1](/packages/melihovv-laravel-log-viewer)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
