number_format()
是 PHP 中用于格式化數字的內置函數。要實現國際化,您需要根據用戶的地區設置(區域設置)對數字進行格式化。這可以通過使用 locale
函數來實現。以下是一個簡單的示例,展示了如何使用 number_format()
和 locale
函數實現國際化:
首先,確保您的服務器上已安裝了 PHP 的 locale
擴展。
創建一個包含不同地區設置的數組:
$locales = array(
'en' => 'en_US.utf8',
'es' => 'es_ES.utf8',
'de' => 'de_DE.utf8',
'fr' => 'fr_FR.utf8',
);
function formatNumber($number, $locale) {
if (array_key_exists($locale, $locales)) {
setlocale(LC_ALL, $locales[$locale]);
return number_format($number);
} else {
return "Invalid locale";
}
}
$number = 1234567.89;
echo formatNumber($number, 'en'); // Output: 1,234,567.89
echo formatNumber($number, 'es'); // Output: 1.234.567,89
echo formatNumber($number, 'de'); // Output: 1.234.567,89
echo formatNumber($number, 'fr'); // Output: 1 234 567,89
在這個示例中,我們創建了一個包含不同地區設置的數組,然后定義了一個名為 formatNumber
的函數,該函數接受一個數字和一個地區設置作為參數。根據給定的地區設置,我們使用 setlocale()
函數設置 PHP 的區域設置,然后使用 number_format()
函數格式化數字。最后,我們使用這個函數來格式化不同地區的數字。