Пакет php-humanizer від Норберта Орzechовіца спрощує роботу з читабельними значеннями, такими як числа, рядки, дати тощо. У проектах на Laravel вже є такі інструменти, як порядкові числові значення, допоміжні методи для рядків та Carbon для роботи з датами, але цей пакет пропонує ще безліч корисних функцій, якщо ви працюєте над самостійним PHP-проектом або будь-яким PHP-додатком:
use Coduo\PHPHumanizer\NumberHumanizer;
use Coduo\PHPHumanizer\CollectionHumanizer;
use Coduo\PHPHumanizer\StringHumanizer;
// Перетворення в читабельний формат
StringHumanizer::humanize('field_name'); // "Field Name"
StringHumanizer::humanize('user_id'); // "User"
StringHumanizer::humanize('field_name', false); // "field name"
// Бінарні суфікси
NumberHumanizer::binarySuffix(1024); // "1 kB"
NumberHumanizer::binarySuffix(1536); // "1.5 kB"
NumberHumanizer::binarySuffix(1048576 * 5); // "5 MB"
NumberHumanizer::binarySuffix(1073741824 * 2); // "2 GB"
// Метричні суфікси
NumberHumanizer::metricSuffix(101); // "101"
NumberHumanizer::metricSuffix(1000); // "1k"
NumberHumanizer::metricSuffix(1240); // "1.2k"
NumberHumanizer::metricSuffix(1240000); // "1.24M"
NumberHumanizer::metricSuffix(3500000); // "3.5M"
// Оксфордський стиль
CollectionHumanizer::oxford(['Michal', 'Norbert', 'Lukasz', 'Pawel'], 2); // "Michal, Norbert, and 2 others"
CollectionHumanizer::oxford(['Michal', 'Norbert', 'Lukasz'], 2); // "Michal, Norbert, and 1 other"
CollectionHumanizer::oxford(['Michal', 'Norbert']); // "Michal and Norbert"
Документація проекту включає більше прикладів і перелік усіх підтримуваних мов. Додаткову інформацію про пакет, повні інструкції з установки та код джерела можна знайти на GitHub.