array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'transliterator.transliterate.php', 1 => 'Transliterator::transliterate', ), 'up' => array ( 0 => 'class.transliterator.php', 1 => 'Transliterator', ), 'prev' => array ( 0 => 'transliterator.listids.php', 1 => 'Transliterator::listIDs', ), 'next' => array ( 0 => 'class.intlbreakiterator.php', 1 => 'IntlBreakIterator', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/intl/transliterator/transliterate.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.4.0, PHP 7, PHP 8, PECL intl >= 2.0.0)
Transliterator::transliterate -- transliterator_transliterate — Транслитерировать строку
Объектно-ориентированный стиль
Процедурный стиль
$transliterator
,$string
,$start
= 0,$end
= -1Преобразовывает строку или её часть, используя транслитератор ICU.
transliterator
В процедурном варианте, Transliterator или строка, из которой может быть собран объект Transliterator.
string
Строка для транслитерации.
start
Начальный индекс, включительно, (в кодовых единицах UTF-16), с которого начинается часть строки, предназначенная для транслитерации. Индексация начинается с 0. Текст до этой позиции останется как есть.
end
Начальный индекс, не включая, (в кодовых единицах UTF-16), которым заканчивается часть строки, предназначенная для транслитерации. Индексация начинается с 0. Текст с этой позиции останется как есть.
Возвращает преобразованную строка в случае успешного выполнения или false
, если возникла ошибка.
Пример #1 Конвертация экранированной UTF-16 строки
<?php
$s = "\u304A\u65E9\u3046\u3054\u3056\u3044\u307E\u3059";
echo transliterator_transliterate("Hex-Any/Java", $s), "\n";
//теперь обратная операция с дополнительным символом
$supplChar = html_entity_decode('𝄞');
echo mb_strlen($supplChar, "UTF-8"), "\n";
$encSupplChar = transliterator_transliterate("Any-Hex/Java", $supplChar);
//вывод двух кодированных UTF-16 символов
echo $encSupplChar, "\n";
//и назад
echo transliterator_transliterate("Hex-Any/Java", $encSupplChar), "\n";
?>
Вывод приведённого примера будет похож на:
お早うございます 1 \uD834\uDD1E 𝄞