yepteam/typograph
Composer 安装命令:
composer require yepteam/typograph
包简介
PHP-библиотека для типографической обработки текста.
README 文档
README
PHP-библиотека для типографической обработки текста.
Возможности
- Замена пробелов и дефисов на неразрывные
- Расстановка короткого и длинного тире
- Замена кавычек первого и второго уровня
- Игнорирование HTML-тегов, Emoji, содержимого тегов script, style и pre
- Кодирование символов в виде мнемоник или числовых кодов
Требования
- PHP 8.1 или выше
- Расширение
mbstring
Установка
Установите пакет через composer:
composer require yepteam/typograph
Использование
use Yepteam\Typograph\Typograph; // Инициализация со стандартными параметрами $typograph = new Typograph(); $html = $typograph->format($html);
Конструктор также принимает булев флаг — короткую форму выбора режима кодирования:
new Typograph(true); // готовыми символами (raw) new Typograph(false); // буквенными кодами (named)
Конфигурация
В примере ниже указаны параметры по умолчанию.
$typograph = new Typograph([ // Режим кодирования // named - буквенными кодами // numeric - числовыми кодами // hex - шестнадцатеричными кодами // raw - готовыми символами 'entities' => Typograph::ENTITIES_RAW, // Многоточия // hellip - замена трех точек на символ многоточия // dots - замена символа многоточия на три точки // none - не обрабатывать многоточия 'ellipsis' => Typograph::ELLIPSIS_HELLIP, // Массив кавычек по каждому уровню // При пустом массиве обработка кавычек будет отключена 'quotes' => [ ['«', '»'], // кавычки 1 уровня ['„', '“'], // кавычки 2 уровня ], // Правила* замены знаков минус/дефис/тире 'dash' => [ 'hyphen-to-mdash' => true, // дефис на mdash 'hyphen-to-minus' => true, // дефис на минус 'mdash-to-ndash' => true, // mdash на ndash 'ndash-to-mdash' => true, // ndash на mdash 'hyphen-to-nbhy' => true, // дефис на неразрывный ], // Правила* расстановки неразрывных пробелов 'nbsp' => [ 'initial' => true, // до и после инициалов 'mdash' => true, // до и после тире 'number' => true, // до и после числа 'short-word' => true, // до и после короткого слова ], // Правила* обработки специальных символов 'special' => [ 'copyright' => true, // (C) на © 'plus-minus' => true, // +- на ± 'reg-mark' => true, // (R) на ® 'times' => true, // x на × между числами 'trade' => true, // (rm) на ™ ], // Режим отладки правил 'debug' => false, ]);
*Для отключения группы правил укажите пустой массив, false или null.
Метрики
После вызова format() доступны метрики последней обработки:
$typograph->format($html); $metrics = $typograph->getMetrics(); // [ // 'originalContentLength' => 1234, // длина исходного текста (символов) // 'resultContentLength' => 1256, // длина результата (символов) // 'tokenizationTime' => 0.001, // время токенизации (сек) // 'processingTime' => 0.004, // время применения правил (сек) // 'totalTime' => 0.005, // суммарное время (сек) // 'memoryUsage' => 524288 // использование памяти (байт) // ]
Дополнительные методы
// Изменить параметры у существующего экземпляра $typograph->setOptions(['entities' => Typograph::ENTITIES_NAMED]); // Получить текущие параметры и параметры по умолчанию $typograph->getOptions(); $typograph->getDefaultOptions(); // Получить массив токенов после обработки (удобно вместе с 'debug' => true) $typograph->getTokens();
yepteam/typograph 适用场景与选型建议
yepteam/typograph 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 110 次下载、GitHub Stars 达 2, 最近一次更新时间为 2025 年 05 月 09 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 yepteam/typograph 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 yepteam/typograph 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 110
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 6
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-05-09