Lines — це CLI-утиліта від Tomas Votruba, яка рахує рядки коду та PHP-метрики в PHP-проєктах. Має нуль залежностей, працює скрізь і дає PHP-специфічну статистику — кількість класів, публічних методів тощо:
$ vendor/bin/lines measure app/
Filesystem count
Directories ......................................... 32
Files .............................................. 160
Lines of code count / relative
Code ................................... 15 521 / 70.9 %
Comments ................................ 6 372 / 29.1 %
Total .................................. 21 893 / 100 %
Structure count
Namespaces .......................................... 32
Classes ............................................ 134
* Constants ........................................ 91
* Methods ....................................... 1 114
Interfaces .......................................... 20
Traits ............................................... 4
Enums ................................................ 1
Functions ........................................... 36
Global constants ..................................... 0
Methods count / relative
Non-static .............................. 1 058 / 95 %
Static ..................................... 56 / 5 %
Public .................................... 875 / 78.5 %
Protected .................................. 90 / 8.1 %
Private ................................... 149 / 13.4 %
Є також JSON-вивід для подальшої обробки, лічильник PHP-фіч, який показує, які сучасні можливості використовує кодова база, та інші корисні інсайти.
Основні можливості
- Працює будь-де — PHP 7.2? PHPUnit 6? Symfony 3? Не проблема: пакет не має залежностей і працює на PHP 7.2+
- Оцінка розміру проєкту — швидкий огляд масштабу проєкту без зайвої складності, лише рядки коду
- JSON-вивід — зручний JSON для подальшої обробки
- PHP Features — показує, які PHP-фічі використовуються в проєкті (наприклад, скільки фіч із PHP 8.0, скільки атрибутів тощо)
🧑💻 Почати можна на GitHub: TomasVotruba/lines