# 国際化関数

# はじめに

国際化用拡張モジュール (これ以降では Intl と略します) は » ICU ライブラリのラッパーです。 PHP プログラマが、ロケール関連のさまざまな操作を行えるようにします。 フォーマット、音訳、エンコード変換、カレンダーの処理、 » UCA 準拠の照合順序 (collation)、 テキストの区切り、ロケール識別子やタイムゾーンや書記素を用いた操作などが可能です。

ICU の API に従って作成されているので、 C/C++ や Java で ICU を使ったことがあるかたは簡単に PHP の API も使えることでしょう。 また、ICU のドキュメントを参考にすればさまざまな ICU の関数について知ることができます。

Intl はいくつかのモジュールで構成されており、 各モジュールが対応する ICU API を公開しています。

- Collator: ロケールに応じた適切な並び順を考慮して、文字列の比較を行います。
- Number Formatter: 各地域固有の書式、あるいは指定した規則に基づいて数値を表示したり、 文字列を数値として解釈したりします。
- Message Formatter: メッセージ関連のデータ (数値や日付など) をパターンやロケールにあわせて適切にフォーマットしたり、 メッセージをパースしてデータを取り出したりします。 複数形を扱ったり、ロケールごとの数値や通貨や条件などを扱ったりすることもできます。
- Normalizer: テキストに対して Unicode の正規化を行ったり、 指定した文字列が正規化済みかどうかを調べたりします。
- Locale: ロケール識別子を扱うための機能を提供します。 たとえばロケール識別子のパースや作成、検索などを行います。
- Calendar: ロケールにあわせたカレンダーの操作を行うためのクラスを提供します。 指定したロケールのタイムゾーンや週の最初の曜日を取得したり、 サマータイム中であるか否かを調べたりすることもできます。
- Timezone: » "Olson" database のラッパーを提供します。 世界中のタイムゾーンに関する情報が含まれています。
- Date formatter: ローカライズした書式や指定したパターン、ルールに基づいて日付と時刻を表示できるようにします。 また、文字列を日付や時刻としてパースすることもできます。

## リンク

- » ICU のドキュメント

- » ICU ユーザーガイド

- » Unicode Collation Algorithm

- インストール/設定
  - 要件
  - インストール手順
  - 実行時設定
- 定義済み定数
- 例
  - 基本的な使用法
- Collator — Collator クラス
  - Collator::asort — インデックスの情報を保持しつつ配列を並べ替える
  - Collator::compare — ふたつの Unicode 文字列を比較する
  - Collator::__construct — collator を作成する
  - Collator::create — collator を作成する
  - Collator::getAttribute — 照合用の属性の値を取得する
  - Collator::getErrorCode — collator の直近のエラーコードを取得する
  - Collator::getErrorMessage — collator の直近のエラーコードのテキストを取得する
  - Collator::getLocale — collator のロケール名を取得する
  - Collator::getSortKey — 文字列のソート用のキーを取得する
  - Collator::getStrength — 現在の照合強度を取得する
  - Collator::setAttribute — 照合用の属性を設定する
  - Collator::setStrength — 照合強度を設定する
  - Collator::sort — 指定した collator で配列を並べ替える
  - Collator::sortWithSortKeys — 指定した collator とキーで配列を並べ替える
- NumberFormatter — NumberFormatter クラス
  - NumberFormatter::create — 数値フォーマッタを作成する
  - NumberFormatter::format — 数値をフォーマットする
  - NumberFormatter::formatCurrency — 通貨の値をフォーマットする
  - NumberFormatter::getAttribute — 属性を取得する
  - NumberFormatter::getErrorCode — フォーマッタの直近のエラーコードを取得する
  - NumberFormatter::getErrorMessage — フォーマッタの直近のエラーメッセージを取得する
  - NumberFormatter::getLocale — フォーマッタのロケールを取得する
  - NumberFormatter::getPattern — フォーマッタのパターンを取得する
  - NumberFormatter::getSymbol — 記号を取得する
  - NumberFormatter::getTextAttribute — テキストの属性を取得する
  - NumberFormatter::parse — 数値をパースする
  - NumberFormatter::parseCurrency — 通貨をパースする
  - NumberFormatter::setAttribute — 属性を設定する
  - NumberFormatter::setPattern — フォーマッタのパターンを設定する
  - NumberFormatter::setSymbol — 記号の値を設定する
  - NumberFormatter::setTextAttribute — テキスト属性を設定する
- Locale — Locale クラス
  - Locale::acceptFromHttp — 最もあてはまるロケールを HTTP "Accept-Language" ヘッダにもとづいて探す
  - Locale::canonicalize — ロケール文字列を正規化する
  - Locale::composeLocale — 正しく並べ替えて区切られたロケール ID を返す
  - Locale::filterMatches — 言語タグフィルタがロケールにマッチするかどうかを調べる
  - Locale::getAllVariants — 入力ロケールの変化系を取得する
  - Locale::getDefault — INTL のグローバル 'default_locale' からデフォルトのロケールを取得する
  - Locale::getDisplayLanguage — 入力ロケールの言語の表示名を、適切に地域化して返す
  - Locale::getDisplayName — 入力ロケールの表示名を、適切に地域化して返す
  - Locale::getDisplayRegion — 入力ロケールの地域の表示名を、適切に地域化して返す
  - Locale::getDisplayScript — 入力ロケールの文字の表示名を、適切に地域化して返す
  - Locale::getDisplayVariant — 入力ロケールの変化形の表示名を、適切に地域化して返す
  - Locale::getKeywords — 入力ロケールのキーワードを取得する
  - Locale::getPrimaryLanguage — 入力ロケールのプライマリ言語を取得する
  - Locale::getRegion — 入力ロケールの地域を取得する
  - Locale::getScript — 入力ロケールの文字を取得する
  - Locale::isRightToLeft — ロケールが右から左に書く文字体系を使うかどうかを調べる
  - Locale::lookup — その言語にマッチする言語タグの一覧を検索する
  - Locale::parseLocale — ロケール ID のサブタグ要素を連想配列で返す
  - Locale::setDefault — デフォルトの実行時ロケールを設定する
- Normalizer — Normalizer クラス
  - Normalizer::getRawDecomposition — UTF-8 エンコードされているコードポイントから、Decomposition_Mapping プロパティの値を取得する
  - Normalizer::isNormalized — 渡された文字列が、指定した正規化を適用済みかどうかを調べる
  - Normalizer::normalize — 渡された入力を正規化し、正規化後の文字列を返す
- MessageFormatter — MessageFormatter クラス
  - MessageFormatter::create — 新しいメッセージフォーマッタを作成する
  - MessageFormatter::format — メッセージをフォーマットする
  - MessageFormatter::formatMessage — 手早くメッセージをフォーマットする
  - MessageFormatter::getErrorCode — 直近の操作のエラーコードを取得する
  - MessageFormatter::getErrorMessage — 直近の操作のエラーテキストを取得する
  - MessageFormatter::getLocale — フォーマッタを作成した際のロケールを取得する
  - MessageFormatter::getPattern — フォーマッタが使用するパターンを取得する
  - MessageFormatter::parse — パターンを使用して入力文字列をパースする
  - MessageFormatter::parseMessage — 手早く入力文字列をパースする
  - MessageFormatter::setPattern — フォーマッタが使用するパターンを設定する
- IntlCalendar — IntlCalendar クラス
  - IntlCalendar::add — フィールドに (符号付きの) 一定量の時間を追加する
  - IntlCalendar::after — このオブジェクトの時刻が、指定されたオブジェクトより未来かを判定する
  - IntlCalendar::before — このオブジェクトの時刻が、指定されたオブジェクトより過去かを判定する
  - IntlCalendar::clear — 単一または全てのフィールドをクリアする
  - IntlCalendar::__construct — インスタンス化を禁止するための private なコンストラクタ
  - IntlCalendar::createInstance — 新しい IntlCalendar を作成する
  - IntlCalendar::equals — ふたつの IntlCalendar オブジェクトの時刻を比較する
  - IntlCalendar::fieldDifference — 指定された時刻と、このオブジェクトの時刻の差を計算する
  - IntlCalendar::fromDateTime — DateTime オブジェクトまたは文字列から、IntlCalendar を作成する
  - IntlCalendar::get — フィールドの値を取得する
  - IntlCalendar::getActualMaximum — オブジェクトの現在時刻を考慮して、フィールドの最大値を取得する
  - IntlCalendar::getActualMinimum — オブジェクトの現在時刻を考慮して、フィールドの最小値を取得する
  - IntlCalendar::getAvailableLocales — データが存在するロケールの配列を取得する
  - IntlCalendar::getDayOfWeekType — 指定された日が平日か、週末か、ふたつの週の間の移行日かを返す
  - IntlCalendar::getErrorCode — オブジェクトに関する直近のエラーコードを取得する
  - IntlCalendar::getErrorMessage — オブジェクトの直近のエラーメッセージを取得する
  - IntlCalendar::getFirstDayOfWeek — カレンダーのロケールに基づいて、週の始めの日を返す
  - IntlCalendar::getGreatestMinimum — 指定されたフィールドの、ローカルな最小値のうち、最大の値を返す
  - IntlCalendar::getKeywordValuesForLocale — ロケールのキーワードの値の集合を返す
  - IntlCalendar::getLeastMaximum — 指定されたフィールドの、ローカルな最大値のうち、最小の値を返す
  - IntlCalendar::getLocale — オブジェクトに関連付けられたロケールを取得する
  - IntlCalendar::getMaximum — フィールドのグローバルな最大値を返す
  - IntlCalendar::getMinimalDaysInFirstWeek — 特定の年や月における、最初の週の日数の最小値を返す
  - IntlCalendar::getMinimum — フィールドのグローバルな最小値を返す
  - IntlCalendar::getNow — 現在時刻を示す数値を取得する
  - IntlCalendar::getRepeatedWallTimeOption — 繰り返される実時間を扱う際の振る舞いを取得する
  - IntlCalendar::getSkippedWallTimeOption — スキップされた実時間を扱う際の振る舞いを取得する
  - IntlCalendar::getTime — このオブジェクトが表す時刻を取得する
  - IntlCalendar::getTimeZone — オブジェクトのタイムゾーンを取得する
  - IntlCalendar::getType — カレンダーのタイプを取得する
  - IntlCalendar::getWeekendTransition — 週末が開始/終了した日からの経過時間を取得する
  - IntlCalendar::inDaylightTime — オブジェクトの時刻が夏時間かを調べる
  - IntlCalendar::isEquivalentTo — 別のカレンダーが、時刻を除いて等しいかを調べる
  - IntlCalendar::isLenient — 日付と時刻の解釈を「緩いモード」で行うかを取得する
  - IntlCalendar::isSet — フィールドが設定されているかを調べる
  - IntlCalendar::isWeekend — ある日付/時刻が週末にあるかを調べる
  - IntlCalendar::roll — 次のフィールドを繰り上げずに、フィールドに値を加算する
  - IntlCalendar::set — 時刻または複数の共通フィールドを一度に設定する
  - IntlCalendar::setDate — 日付のフィールドを設定する
  - IntlCalendar::setDateTime — 日付と時刻のフィールドを設定する
  - IntlCalendar::setFirstDayOfWeek — 週の始まりと見なされる曜日を設定する
  - IntlCalendar::setLenient — 日付/時刻の解釈を「緩いモード」にするかを設定する
  - IntlCalendar::setMinimalDaysInFirstWeek — 特定の年や月における、最初の週の日数の最小値を設定する
  - IntlCalendar::setRepeatedWallTimeOption — 負のタイムゾーンオフセットを適用した際に、繰り返される実時間をどう扱うかを設定する
  - IntlCalendar::setSkippedWallTimeOption — 正のタイムゾーンオフセットを適用した際に、スキップされる実時間をどう扱うかを設定する
  - IntlCalendar::setTime — エポックからのカレンダーの時刻をミリ秒単位で設定する
  - IntlCalendar::setTimeZone — このカレンダーで使うタイムゾーンを設定する
  - IntlCalendar::toDateTime — IntlCalendar を DateTime オブジェクトに変換する
- IntlGregorianCalendar — IntlGregorianCalendar クラス
  - IntlGregorianCalendar::__construct — グレゴリオ暦の Calendar クラスを作成する
  - IntlGregorianCalendar::createFromDate — 日付の情報から、新しい IntlGregorianCalendar のインスタンスを作成する
  - IntlGregorianCalendar::createFromDateTime — 日付と時刻の値から、新しい IntlGregorianCalendar のインスタンスを作成する
  - IntlGregorianCalendar::getGregorianChange — グレゴリオ暦への切換え日を取得する
  - IntlGregorianCalendar::isLeapYear — 指定された年がうるう年かを判定する
  - IntlGregorianCalendar::setGregorianChange — グレゴリオ暦への切換え日を設定する
- IntlTimeZone — IntlTimeZone クラス
  - IntlTimeZone::__construct — インスタンス化を禁止するためのprivateなコンストラクタ
  - IntlTimeZone::countEquivalentIDs — 指定した ID を含む等価グループの中にある ID の数を取得する
  - IntlTimeZone::createDefault — このホストのデフォルトタイムゾーンの新しいコピーを作る
  - IntlTimeZone::createEnumeration — 指定した国あるいはオフセットに関連するタイムゾーン ID の一覧を取得する
  - IntlTimeZone::createTimeZone — 指定した ID のタイムゾーンオブジェクトを作る
  - IntlTimeZone::createTimeZoneIDEnumeration — 指定されたフィルタ条件を反映した、システムタイムゾーンのイテレータを取得する
  - IntlTimeZone::fromDateTimeZone — DateTimeZone からタイムゾーンオブジェクトを作る
  - IntlTimeZone::getCanonicalID — 指定したタイムゾーン ID の、正式なシステムタイムゾーン ID あるいは正規化したカスタムタイムゾーン ID を取得する
  - IntlTimeZone::getDisplayName — このタイムゾーンの、ユーザー向けに表示する名前を取得する
  - IntlTimeZone::getDSTSavings — ローカルの標準時刻からローカルの実測時刻を得るために加算する時間を取得する
  - IntlTimeZone::getEquivalentID — 指定した ID を含む等価グループの ID を取得する
  - IntlTimeZone::getErrorCode — 直近のエラーコードを取得する
  - IntlTimeZone::getErrorMessage — 直近のエラーメッセージを取得する
  - IntlTimeZone::getGMT — GMT (UTC) タイムゾーンを作る
  - IntlTimeZone::getIanaID — タイムゾーン識別子を、対応する IANA 識別子に変換する
  - IntlTimeZone::getID — タイムゾーン ID を取得する
  - IntlTimeZone::getIDForWindowsID — Windows のタイムゾーンを、システムタイムゾーンに翻訳する
  - IntlTimeZone::getOffset — 指定した時刻の、GMT へのオフセットを取得する
  - IntlTimeZone::getRawOffset — (夏時間を考慮せずに) GMT へのオフセットを取得する
  - IntlTimeZone::getRegion — 指定されたシステムタイムゾーンのIDから、地域コードを取得する
  - IntlTimeZone::getTZDataVersion — ICU が使っているタイムゾーンデータのバージョンを取得する
  - IntlTimeZone::getUnknown — "unknown" なタイムゾーンを取得する
  - IntlTimeZone::getWindowsID — システムタイムゾーンを、Windows のタイムゾーンに翻訳する
  - IntlTimeZone::hasSameRules — このタイムゾーンが別のタイムゾーンと同じルールおよびオフセットを使っているかどうかを調べる
  - IntlTimeZone::toDateTimeZone — DateTimeZone オブジェクトに変換する
  - IntlTimeZone::useDaylightTime — このタイムゾーンが夏時間を採用しているかどうかを調べる
- IntlDateFormatter — IntlDateFormatter クラス
  - IntlDateFormatter::create — Date Formatter を作成する
  - IntlDateFormatter::format — 日付/時刻 の値を文字列としてフォーマットする
  - IntlDateFormatter::formatObject — オブジェクトの書式を設定する
  - IntlDateFormatter::getCalendar — IntlDateFormatter が使用するカレンダー型を取得する
  - IntlDateFormatter::getDateType — IntlDateFormatter が使用する日付形式を取得する
  - IntlDateFormatter::getErrorCode — 直近の操作のエラーコードを取得する
  - IntlDateFormatter::getErrorMessage — 直近の操作のエラーテキストを取得する
  - IntlDateFormatter::getLocale — Formatter が使用するロケールを取得する
  - IntlDateFormatter::getPattern — IntlDateFormatter が使用するパターンを取得する
  - IntlDateFormatter::getTimeType — IntlDateFormatter が使用する時刻形式を取得する
  - IntlDateFormatter::getTimeZoneId — IntlDateFormatter が使用するタイムゾーン ID を取得する
  - IntlDateFormatter::getCalendarObject — カレンダーオブジェクトのコピーを取得する
  - IntlDateFormatter::getTimeZone — タイムゾーンを取得する
  - IntlDateFormatter::isLenient — IntlDateFormatter で使用する寛大さを取得する
  - IntlDateFormatter::localtime — 文字列をパースして、フィールドベースの時刻値にする
  - IntlDateFormatter::parse — 文字列をパースしてタイムスタンプにする
  - IntlDateFormatter::parseToCalendar — 文字列をパースしてタイムスタンプにし、使用中のカレンダーを更新する
  - IntlDateFormatter::setCalendar — Formatter が使うカレンダー型を設定する
  - IntlDateFormatter::setLenient — パーサーの寛大さを設定する
  - IntlDateFormatter::setPattern — IntlDateFormatter が使用するパターンを設定する
  - IntlDateFormatter::setTimeZone — タイムゾーンを設定する
- ResourceBundle — ResourceBundle クラス
  - ResourceBundle::count — バンドル内の要素数を取得する
  - ResourceBundle::create — リソースバンドルを作成する
  - ResourceBundle::get — バンドルからデータを取得する
  - ResourceBundle::getErrorCode — バンドルの直近のエラーコードを取得する
  - ResourceBundle::getErrorMessage — バンドルの直近のエラーメッセージを取得する
  - ResourceBundle::getLocales — サポートするロケールを取得する
- Spoofchecker — Spoofchecker クラス
  - Spoofchecker::areConfusable — 指定された文字列が、読み手を混乱させうるかをチェックする
  - Spoofchecker::__construct — コンストラクタ
  - Spoofchecker::isSuspicious — 指定されたテキストに、疑わしい文字が含まれていないかをチェックする
  - Spoofchecker::setAllowedChars — チェック時に許可する文字集合を設定する
  - Spoofchecker::setAllowedLocales — チェック時に使うロケールを設定する
  - Spoofchecker::setChecks — 実行するチェックを設定する
  - Spoofchecker::setRestrictionLevel — 制限レベルを設定する
- Transliterator — Transliterator クラス
  - Transliterator::__construct — インスタンス化を拒否するために private にしたコンストラクタ
  - Transliterator::create — Transliterator を作成する
  - Transliterator::createFromRules — 規則に基づいた Transliterator を作成する
  - Transliterator::createInverse — 逆方向の Transliterator を作成する
  - Transliterator::getErrorCode — 直近のエラーコードを取得する
  - Transliterator::getErrorMessage — 直近のエラーメッセージを取得する
  - Transliterator::listIDs — Transliterator の ID を取得する
  - Transliterator::transliterate — 文字列を音訳する
- IntlBreakIterator — IntlBreakIterator クラス
  - IntlBreakIterator::__construct — インスタンス化を禁止するためのprivateなコンストラクタ
  - IntlBreakIterator::createCharacterInstance — 文字シーケンスの組み合わせの境界用にイテレータを作る
  - IntlBreakIterator::createCodePointInstance — コードポイントの境界用にイテレータを作る
  - IntlBreakIterator::createLineInstance — 論理的に可能な改行用にイテレータを作る
  - IntlBreakIterator::createSentenceInstance — 文末用にイテレータを作る
  - IntlBreakIterator::createTitleInstance — タイトル文字の区切り用にイテレータを作る
  - IntlBreakIterator::createWordInstance — 単語の区切り用にイテレータを作る
  - IntlBreakIterator::current — 現在位置のインデックスを取得する
  - IntlBreakIterator::first — テキスト内の最初の文字を場所を取得する
  - IntlBreakIterator::following — 指定したオフセット以降の最初の境界までイテレータを進める
  - IntlBreakIterator::getErrorCode — このオブジェクトの直近のエラーコードを取得する
  - IntlBreakIterator::getErrorMessage — このオブジェクトの直近のエラーメッセージを取得する
  - IntlBreakIterator::getLocale — このオブジェクトに関連づけられたロケールを取得する
  - IntlBreakIterator::getPartsIterator — 境界と境界の間の navigating fragments 用にイテレータを作る
  - IntlBreakIterator::getText — スキャンするテキストを取得する
  - IntlBreakIterator::isBoundary — あるオフセットが境界のオフセットかどうかを調べる
  - IntlBreakIterator::last — イテレータの位置を、最後の文字より後に設定する
  - IntlBreakIterator::next — イテレータを次の境界まで進める
  - IntlBreakIterator::preceding — イテレータの位置を、指定したオフセット以前の最初の境界に設定する
  - IntlBreakIterator::previous — イテレータの位置を、現在位置の直前の境界に設定する
  - IntlBreakIterator::setText — スキャンするテキストを設定する
- IntlRuleBasedBreakIterator — IntlRuleBasedBreakIterator クラス
  - IntlRuleBasedBreakIterator::__construct — ルールセットから iterator を作成する
  - IntlRuleBasedBreakIterator::getBinaryRules — コンパイル済みのルールを、バイナリで取得する
  - IntlRuleBasedBreakIterator::getRules — このオブジェクトを作るのに使われているルールを取得する
  - IntlRuleBasedBreakIterator::getRuleStatus — 現在の境界位置を決めるルールから、ステータスの最大値を取得する
  - IntlRuleBasedBreakIterator::getRuleStatusVec — 現在の境界位置から定まるルールから、ステータス値を取得する
- IntlCodePointBreakIterator — IntlCodePointBreakIterator クラス
  - IntlCodePointBreakIterator::getLastCodePoint — イテレータを進めたり、戻したりした後に渡された、直近のコードポイントを取得する
- IntlDatePatternGenerator — IntlDatePatternGenerator クラス
  - IntlDatePatternGenerator::create — IntlDatePatternGenerator を作成する
  - IntlDatePatternGenerator::getBestPattern — もっとも適合した 日付/時刻 のフォーマットを決定する
- IntlPartsIterator — IntlPartsIterator クラス
  - IntlPartsIterator::getBreakIterator — この parts iterator の裏付けとなる、IntlBreakIterator を取得する
- UConverter — UConverter クラス
  - UConverter::__construct — UConverter オブジェクトを作る
  - UConverter::convert — ある文字セットから別の文字セットに文字列を変換する
  - UConverter::fromUCallback — デフォルトの "from" コールバック関数
  - UConverter::getAliases — 指定した名前のエイリアスを取得する
  - UConverter::getAvailable — 利用可能なコンバーター名を取得する
  - UConverter::getDestinationEncoding — 変換先エンコーディングを取得する
  - UConverter::getDestinationType — 変換先のコンバーターの型を取得する
  - UConverter::getErrorCode — 直近のエラーコードを取得する
  - UConverter::getErrorMessage — 直近のエラーメッセージを取得する
  - UConverter::getSourceEncoding — 変換元エンコーディングを取得する
  - UConverter::getSourceType — 変換元のコンバーターの型を取得する
  - UConverter::getStandards — コンバーター名に対応する標準を取得する
  - UConverter::getSubstChars — 置換文字を取得する
  - UConverter::reasonText — コールバックの理由を表す文字列を取得する
  - UConverter::setDestinationEncoding — 変換先エンコーディングを設定する
  - UConverter::setSourceEncoding — 変換元エンコーディングを設定する
  - UConverter::setSubstChars — 置換文字を設定する
  - UConverter::toUCallback — デフォルトの "to" コールバック関数
  - UConverter::transcode — ある文字エンコーディングから別の文字エンコーディングに文字列を変換する
- Grapheme 関数
  - grapheme_extract — デフォルトの書記素クラスタシーケンスをテキストバッファから取り出す関数。 テキストは UTF-8 でエンコードされている必要があります
  - grapheme_str_split — 書記素クラスターを受け取り、文字の配列を返す
  - grapheme_stripos — 大文字小文字を区別せず、文字列内で最初にあらわれる場所の (書記素単位の) 位置を見つける
  - grapheme_stristr — 大文字小文字を区別せず、haystack 文字列の中で needle が最初に登場した場所以降の部分文字列を返す
  - grapheme_strlen — 書記素単位で文字列の長さを取得する
  - grapheme_strpos — 文字列内で最初にあらわれる場所の (書記素単位の) 位置を見つける
  - grapheme_strripos — 大文字小文字を区別せず、文字列内で最後にあらわれる場所の (書記素単位の) 位置を見つける
  - grapheme_strrpos — 文字列内で最後にあらわれる場所の (書記素単位の) 位置を見つける
  - grapheme_strstr — haystack 文字列の中で、needle が最初に登場した場所以降の部分文字列を返す
  - grapheme_substr — 部分文字列を返す
- IDN 関数
  - idn_to_ascii — ドメイン名をIDNAのASCII形式に変換する
  - idn_to_utf8 — IDNAのASCII方式でエンコードされたドメイン名をUnicodeに変換する
- IntlChar — IntlChar クラス
  - IntlChar::charAge — コードポイントの "age" を取得する
  - IntlChar::charDigitValue — 10進数の桁の文字を桁の値として取得する
  - IntlChar::charDirection — コードポイントの双方向カテゴリの値を取得する
  - IntlChar::charFromName — 名前で Unicode 文字を探し、コードポイントの値を返す
  - IntlChar::charMirror — コードポイントの "鏡文字" を取得する
  - IntlChar::charName — Unicode 文字の名前を取得する
  - IntlChar::charType — コードポイントの一般カテゴリの値を取得する
  - IntlChar::chr — コードポイント値に対応する、Unicode 文字を返す
  - IntlChar::digit — コードポイントの10進の数値を、指定された基数で返す
  - IntlChar::enumCharNames — 指定された範囲の全てのUnicode文字を走査する
  - IntlChar::enumCharTypes — Unicode の一般カテゴリの情報付きで、全てのコードポイントを走査する
  - IntlChar::foldCase — コードポイントに対してケースフォールディングを行う
  - IntlChar::forDigit — 指定された整数と基数を表す文字を取得する
  - IntlChar::getBidiPairedBracket — コードポイントと対になる括弧文字を取得する
  - IntlChar::getBlockCode — コードポイントが含まれる割当ブロックを取得する
  - IntlChar::getCombiningClass — コードポイントの合成クラスを取得する
  - IntlChar::getFC_NFKC_Closure — コードポイントの FC_NFKC_Closure プロパティの値を取得する
  - IntlChar::getIntPropertyMaxValue — Unicode プロパティの最大値を取得する
  - IntlChar::getIntPropertyMinValue — Unicode プロパティの最小値を取得する
  - IntlChar::getIntPropertyValue — コードポイントに対応する、Unicode プロパティの値を取得する
  - IntlChar::getNumericValue — Unicode のコードポイントの数値の値を取得する
  - IntlChar::getPropertyEnum — プロパティの名前に対応する定数値を取得する
  - IntlChar::getPropertyName — プロパティに対応する、Unicode での名前を取得する
  - IntlChar::getPropertyValueEnum — 指定された値の名前に対応する、プロパティの値を取得する
  - IntlChar::getPropertyValueName — プロパティの値に対応する、Unicode の名前を取得する
  - IntlChar::getUnicodeVersion — Unicode のバージョンを取得する
  - IntlChar::hasBinaryProperty — コードポイントに対応する、バイナリ Unicode プロパティがあるかを調べる
  - IntlChar::isalnum — コードポイントが英数字であるかを調べる
  - IntlChar::isalpha — コードポイントがアルファベットかを調べる
  - IntlChar::isbase — コードポイントが基底文字に含まれるかを調べる
  - IntlChar::isblank — コードポイントが "空白" または "水平方向の空白" 文字であるかを調べる
  - IntlChar::iscntrl — コードポイントが制御文字かどうかを調べる
  - IntlChar::isdefined — コードポイントが定義されているかどうかを調べる
  - IntlChar::isdigit — コードポイントが、数字であるかを調べる
  - IntlChar::isgraph — コードポイントが図形文字であるかを調べる
  - IntlChar::isIDIgnorable — コードポイントが無視できる文字かを調べる
  - IntlChar::isIDPart — コードポイントが識別子として使えるかを調べる
  - IntlChar::isIDStart — コードポイントが識別子の最初の文字として使えるかを調べる
  - IntlChar::isISOControl — コードポイントがISOで定義された制御文字であるかを調べる
  - IntlChar::isJavaIDPart — コードポイントが、Java の識別子として使えるかを調べる
  - IntlChar::isJavaIDStart — コードポイントが Java の識別子の最初の文字として使えるかを調べる
  - IntlChar::isJavaSpaceChar — コードポイントが Java におけるスペース文字であるかを調べる
  - IntlChar::islower — コードポイントが小文字かどうかを調べる
  - IntlChar::isMirrored — コードポイントが Bidi_Mirrored プロパティを持つかを調べる
  - IntlChar::isprint — コードポイントが印字可能な文字かを調べる
  - IntlChar::ispunct — コードポイントが句読点の文字かどうかを調べる
  - IntlChar::isspace — コードポイントが、スペース文字であるかを調べる
  - IntlChar::istitle — コードポイントがタイトルケース文字であるかを調べる
  - IntlChar::isUAlphabetic — コードポイントが、Alphabetic プロパティを持つかを調べる
  - IntlChar::isULowercase — コードポイントが小文字のUnicodeプロパティを持つかを調べる
  - IntlChar::isupper — コードポイントが一般カテゴリ "Lu" (大文字) に属するかを判定する
  - IntlChar::isUUppercase — コードポイントが大文字のUnicodeプロパティを持つかを調べる
  - IntlChar::isUWhiteSpace — コードポイントが、White_Space プロパティを持つかを調べる
  - IntlChar::isWhitespace — コードポイントが、ICU の空白文字であるかを調べる
  - IntlChar::isxdigit — コードポイントが、16進数の文字であるかを調べる
  - IntlChar::ord — 文字に対応する Unicode コードポイントを返す
  - IntlChar::tolower — Unicode 文字を小文字にする
  - IntlChar::totitle — Unicode 文字をタイトルケースにする
  - IntlChar::toupper — Unicode 文字を大文字にする
- IntlException — intl のエラー用の例外クラス
- IntlIterator — IntlIterator クラス
  - IntlIterator::current — 現在の要素を取得する
  - IntlIterator::key — 現在のキーを取得する
  - IntlIterator::next — 次の要素に進む
  - IntlIterator::rewind — イテレータを最初の要素に戻す
  - IntlIterator::valid — 現在の位置が有効かを調べる
- 国際化 関数
  - intl_error_name — 指定したエラーコードに対応する名前を取得する
  - intl_get_error_code — 直近のエラーコードを取得する
  - intl_get_error_message — 直近のエラーの説明を取得する
  - intl_is_failure — 指定したエラーコードが失敗を表すかどうかを調べる

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open