Transliterator::transliterate
transliterator_transliterate
(PHP 5 >= 5.4.0, PHP 7, PECL intl >= 2.0.0)
Transliterator::transliterate -- transliterator_transliterate — Транслитерировать строку
Описание
Объектно-ориентированный стиль
$subject
, int $start
= ?
, int $end
= ?
) : string|falseПроцедурный стиль
$transliterator
, string $subject
, int $start
= ?
, int $end
= ?
)Преобразует строку или ее часть, используя транслитератор ICU.
Список параметров
-
transliterator
-
В процедурном варианте, Transliterator или строка, из которой может быть собран объект Transliterator.
-
subject
-
Строка для транслитерации.
-
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 𝄞
Смотрите также
- Transliterator::getErrorMessage() - Получить последнее сообщение об ошибке
- Transliterator::__construct() - Приватный конструктор