PHP 8.4.0 RC2 available for testing

Transliterator::create

transliterator_create

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

Transliterator::create -- transliterator_createTransliterator を作成する

説明

オブジェクト指向型

public static Transliterator::create(string $id, int $direction = Transliterator::FORWARD): ?Transliterator

手続き型

transliterator_create(string $id, int $direction = Transliterator::FORWARD): ?Transliterator

ID を指定して Transliterator をオープンします。

警告

この関数は、 現在のところ詳細な情報はありません。引数のリストのみが 記述されています。

パラメータ

id

ID を指定します。 全ての登録済みの transliterator ID は、 Transliterator::listIDs() を使って取得できます。

direction

方向。デフォルトは Transliterator::FORWARD です。 Transliterator::REVERSE も指定できます。

戻り値

成功した場合に Transliterator オブジェクト、失敗した場合に null を返します。

参考

add a note

User Contributed Notes 3 notes

up
6
Harry..de
3 years ago
// Translit each and every char to ASCII

$string = 'Москва́';
$string = Transliterator::create('Any-Latin; Latin-ASCII')->transliterate($string);

print $string;

// the result is "Moskva"
up
2
Baran Sakallolu
4 years ago
A good example of create for non latin languages is Turkish.

There both upper case I character and lowercase ı character which makes other strtolower kind of functions useless.

$text = "Iğdır";

echo Transliterator::create("tr-Lower")->transliterate($text);

will return the correct result ığdır, not iğdır .
up
2
Jan Kucha
4 years ago
If you want to go deeper into what is going on, read the ICU projects docs: http://userguide.icu-project.org/transforms/general

This API call is basically just wrapper around ICU Transliteration.
To Top