# symfony/polyfill-intl-grapheme

Symfony polyfill for intl's grapheme_* functions

Repository: https://github.com/symfony/polyfill-intl-grapheme
Canonical: https://ross.abutalabs.com/products/polyfill-intl-grapheme
Homepage: https://symfony.com/polyfill-intl-grapheme
Language: PHP
License: MIT
License Family: permissive
Topics: symfony, component, symfony-component, polyfill, compatibility, grapheme, intl, javascript, portable, shim, symfony-polyfill
Last push: 2026-07-28T08:42:19+00:00

## Health v2 (maintenance only)
Score: 96/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 94, release rhythm 95, longevity 100
- inputs: {"age_days": 3968, "days_push": 36, "days_rel": 36, "gap_med": 6.5, "n_releases_24m": 7}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1725, forks 5 (observed 2026-08-28T04:05:28.084070+00:00)

## What it is
A Symfony polyfill library providing native PHP implementations of the intl extension's grapheme_* string functions for environments where the Intl extension is unavailable. It supports functions like grapheme_strlen, grapheme_substr, grapheme_strpos, and grapheme_str_split on UTF-8 strings.

## Use cases
- use grapheme_* functions without the intl extension installed
- count string length in grapheme units on hosts lacking intl
- split strings into grapheme clusters in pure PHP
- portable unicode string handling across PHP deployments
- find substring positions in grapheme units without ext-intl

## When to choose
- your PHP runtime lacks the intl extension but you need grapheme cluster string operations
- you want portable code that works with or without ext-intl
- you already use Symfony components and need consistent unicode handling

## When to avoid
- the intl extension is already installed and you prefer the native C implementation
- you need full ICU unicode support beyond the grapheme_* function subset

## Facets
- artifact type: library
- maturity: stable
- function: internationalization, parser
- domain: developer-tools, web-development
- platform: php
- tags: polyfill, shim, grapheme, unicode, intl, symfony-component, localization

## Member repositories
- symfony/polyfill-intl-grapheme (main) score 96

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:28.084070+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:33:52.815718+00:00, confidence not recorded.
  - readme: https://github.com/symfony/polyfill-intl-grapheme (fetched 2026-08-28T04:05:28.084070+00:00, sha cb6a58a3c35f)
  - homepage: https://symfony.com/polyfill-intl-grapheme (fetched 2026-08-29T11:09:17.261807+00:00, sha 2dce9e22d06b)
  - site_page: https://symfony.com/doc (fetched 2026-08-29T11:09:17.265644+00:00, sha 44889134f4fb)
  - site_page: https://symfony.com/releases (fetched 2026-08-29T11:09:17.267691+00:00, sha 5bd749e2b676)
  - site_page: https://symfony.com/blog/category/releases (fetched 2026-08-29T11:09:17.269771+00:00, sha 0739a28df2e8)
- Data as of 2026-08-30T08:39:29.467469+00:00.
