Transliterator::transliterate

transliterator_transliterate

Transliterate a string

&reftitle.description;

&style.oop;

public `string` `Transliterator::transliterate` `string` `subject` `int` `start` `int` `end`

&style.procedural;

`transliterator_transliterate` `mixed` `transliterator` `string` `subject` `int` `start` `int` `end`

Transforms a string or part thereof using an ICU transliterator.

&reftitle.parameters;

`transliterator`

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

`subject`

- 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.

&reftitle.returnvalues;

The transfomed string on success, &return.falseforfailure;.

&reftitle.examples;

### Converting escaped UTF-16 code units

    <?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";
    ?>

&example.outputs.similar;

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

&reftitle.seealso;

- `Transliterator::getErrorMessage`
- `Transliterator::__construct`