If you want to go deeper into what is going on, read the ICU projects docs: http://userguide.icu-project.org/transforms/general
This API call is basically just wrapper around ICU Transliteration.
(PHP 5 >= 5.4.0, PHP 7, PHP 8, PECL intl >= 2.0.0)
Transliterator::create -- transliterator_create — Create a transliterator
Object-oriented style
$id
, int $direction
= Transliterator::FORWARD): ?TransliteratorProcedural style
Opens a Transliterator by ID.
This function is currently not documented; only its argument list is available.
id
The ID. A list of all registered transliterator IDs can be retrieved by using Transliterator::listIDs().
direction
The direction, defaults to Transliterator::FORWARD. May also be set to Transliterator::REVERSE.
Returns a Transliterator object on success,
or null
on failure.
If you want to go deeper into what is going on, read the ICU projects docs: http://userguide.icu-project.org/transforms/general
This API call is basically just wrapper around ICU Transliteration.
A good example of create for non latin languages is Turkish.
There both upper case I character and lowercase ı character which makes other strtolower kind of functions useless.
$text = "Iğdır";
echo Transliterator::create("tr-Lower")->transliterate($text);
will return the correct result ığdır, not iğdır .