Rules syntax could be found at https://unicode-org.github.io/icu/userguide/transforms/general/#overview(PHP 5 >= 5.4.0, PHP 7, PHP 8, PECL intl >= 2.0.0)
Transliterator::createFromRules -- transliterator_create_from_rules — Crée un translittérateur depuis des règles
Style orienté objet
$rules, int $direction = Transliterator::FORWARD): ?TransliteratorStyle procédural
$rules, int $direction = Transliterator::FORWARD): ?TransliteratorCrée un translittérateur depuis des règles.
Cette fonction est actuellement non documentée ; seule la liste des arguments est disponible.
rulesLes règles comme définie dans Transform Rules Syntax de UTS #35 : Unicode LDML.
directionLa direction, par défaut Transliterator::FORWARD. Peut également être défini à Transliterator::REVERSE.
   Retourne un objet Transliterator en cas de succès,
   ou null si une erreur survient.
  
Rules syntax could be found at https://unicode-org.github.io/icu/userguide/transforms/general/#overview// string normalization example
$transliterator = Transliterator::createFromRules(''
                        . ':: [^йЙ];'
                        . ':: NFD;'
                        . ' [:White_Space:]+ > \' \';'
                        . ':: Upper();'
                        . ':: [:Nonspacing Mark:] Remove;'
                        . ':: NFC;', Transliterator::FORWARD);
$str = 'ручей   příklad';
echo str_replace('й', 'Й', $transliterator->transliterate($str));
// result:
// РУЧЕЙ PRIKLAD