php8.5
Home/ Manual/ intl / transliterator/ Transliterator::transliterate

Transliterator::transliterate

PHP function Edit on GitHub ✎

(PHP 5 >= 5.4.0, PHP 7, PHP 8, PECL intl >= 2.0.0)

Transliterate a string

Description

Oop

Transliterator::transliterate(string $string, int $start = 0, int $end = -1): string|false

Procedural

transliterator_transliterate(Transliterator|string $transliterator, string $string, int $start = 0, int $end = -1): string|false

Transforms a string or part thereof using an ICU transliterator.

Parameters

transliterator

In the procedural version, either a Transliterator or a string from which a Transliterator can be built.

string

The string to be transformed.

start

The start index (in UTF-16 code units) from which the string will start to be transformed, inclusive. Indexing starts at 0. The text before will be left as is.

end

The end index (in UTF-16 code units) until which the string will be transformed, exclusive. Indexing starts at 0. The text after will be left as is.

Return Values

The transformed string on success, Falseforfailure.

Examples

Converting escaped UTF-16 code units

php
<?php
$s = "\u304A\u65E9\u3046\u3054\u3056\u3044\u307E\u3059";
echo transliterator_transliterate("Hex-Any/Java", $s), "\n";

//now the reverse operation with a supplementary character
$supplChar = html_entity_decode('&#x1D11E;');
echo mb_strlen($supplChar, "UTF-8"), "\n";
$encSupplChar = transliterator_transliterate("Any-Hex/Java", $supplChar);
//echoes two encoded UTF-16 code units
echo $encSupplChar, "\n";
//and back
echo transliterator_transliterate("Hex-Any/Java", $encSupplChar), "\n";
?>

The above example will output something similar to:

output
お早うございます
1
\uD834\uDD1E
𝄞

See Also

  • Transliterator::getErrorMessage
  • Transliterator::__construct

Source: reference/intl/transliterator/transliterate.xml · from the official PHP manual (php/doc-en)