Grapheme: визначення ширини символа

0
Перекладено ШІ
Оригінал: Laravel News
Оновлено: 18 березня, 2025
Вам коли-небудь доводилося стикатися з проблемами вирівнювання тексту в термінальних програмах через неправильне визначення ширини символів? У нашій статті ми розглянемо інноваційну бібліотеку Grapheme, яка допоможе вам вирішити ці виклики та забезпечить коректне обчислення ширини символів у PHP-додатках

У термінальних програмах важливо точно визначити ширину відображення символів Unicode для коректного вирівнювання та форматування тексту. Однак сучасний текст Unicode має свої складнощі:

Щоб вирішити ці питання, Аарон Франсіс створив бібліотеку Grapheme, яка забезпечує точні, швидкі та ретельно протестовані методи для обчислення ширини відображення будь-якого символа чи кластеру графем у PHP-додатках.

# Основні можливості:

Щоб встановити цей пакет, скористайтеся Composer:

composer require soloterm/grapheme

Ось кілька прикладів використання пакета:

use SoloTerm\Grapheme\Grapheme;

Grapheme::wcwidth('Я'); // Поверне: 1
Grapheme::wcwidth('文'); // Поверне: 2
Grapheme::wcwidth('😀'); // Поверне: 2

Для отримання додаткової інформації та перегляду вихідного коду відвідайте репозиторій Grapheme на GitHub.

Популярні

Logomark Logotype

Налаштування Xdebug з Docker та PHP 8.4 всього за одну хвилину

Встановлення Xdebug може бути складним завданням, але в цій статті ми розкриємо, як швидко та просто налаштувати його за допомогою Docker на прикладі Laravel. Дочитайте до кінця, щоб дізнатися, як за кілька хвилин зробити Xdebug вашим надійним помічником у розробці

Logomark Logotype

Nuxt 3 + Laravel Sanctum: Просте та надійне рішення для автентифікації вашого SPA та API

У сучасній веб-розробці аутентифікація є ключовою для захисту додатків і даних користувачів. Дізнайтеся, як модуль nuxt-sanctum-authentication спростить інтеграцію між Nuxt 3 та Laravel Sanctum, забезпечуючи надійний і зручний спосіб реалізації аутентифікації для вашого проєкту

Logomark Logotype

Що нового в PHP 8.5

PHP 8.5 обіцяє безліч нових можливостей, таких як оператор Pipe, функції `array_first()` та `array_last()`, а також нове розширення URI. Чи готові ви дізнатися, як ці функції можуть спростити вашу розробку? Читайте далі, щоб дізнатися більше про ці захоплюючі нововведення