值得注意的是,如果 $langtag 陣列是空的,這個函式會返回空字串而不是 $default。如果您的 $langtag 陣列是空的,請使用 array(false) 以取得預設的語系設定。
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
Locale::lookup -- locale_lookup — 在語言標籤列表中搜尋與語言最佳的相符項目
物件導向風格
$languageTag
,$locale
,$canonicalize
= false
,$defaultLocale
= null
程序式風格
$languageTag
,$locale
,$canonicalize
= false
,$defaultLocale
= null
根據 RFC 4647 的查找演算法,在 languageTag
中搜尋與 locale
指定的語言範圍最相符的項目。
languageTag
一個包含要與 locale
比較的語言標籤列表的 陣列。最多允許 100 個項目。
locale
在比對時用作語言範圍的地區設定。
canonicalize
如果為 true,則參數將在比對前轉換為標準形式。
defaultLocale
找不到相符項時要使用的地區設定。
版本 | 描述 |
---|---|
7.4.0 |
defaultLocale 現在可以為 null。 |
範例 #1 locale_lookup() 範例
<?php
$arr = array(
'de-DEVA',
'de-DE-1996',
'de',
'de-De'
);
echo locale_lookup($arr, 'de-DE-1996-x-prv1-prv2', true, 'en_US');
?>
範例 #2 物件導向範例
<?php
$arr = array(
'de-DEVA',
'de-DE-1996',
'de',
'de-De'
);
echo Locale::lookup($arr, 'de-DE-1996-x-prv1-prv2', true, 'en_US');
?>
上述範例將輸出
de_de_1996
值得注意的是,如果 $langtag 陣列是空的,這個函式會返回空字串而不是 $default。如果您的 $langtag 陣列是空的,請使用 array(false) 以取得預設的語系設定。