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 — Создать транслитератор на основе правил
Объектно-ориентированный стиль
$rules, int $direction = Transliterator::FORWARD): ?TransliteratorПроцедурный стиль
$rules, int $direction = Transliterator::FORWARD): ?TransliteratorСоздать транслитератор на основе правил.
Функцию пока не задокументировали; для знакомства доступен только список аргументов.
rulesПравила, которые описаны в разделе Transform Rules Syntax отчёта UTS #35: Unicode LDML.
directionНаправление транслитерации. По умолчанию Transliterator::FORWARD. Можно использовать Transliterator::REVERSE.
   Возвращает объект Transliterator или
   null в случае возникновения ошибки.
  
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