我有這樣的代碼在PHP中的日期轉換爲自己的區域PHP - 用另一種語言的strftime輸出亂碼
$date = time();
$locale_code = 'en_NZ';
$format_full_date = '%e %B %Y at %l:%M %P'; // 21 August 2013 at 3:26 am
// Set locale
setlocale(LC_ALL, $locale_code);
// Get date
$locale_date = strftime(lang('format_full_date'), $date);
// Reset locale
setlocale(LC_ALL, 0);
這工作正常en_NZ
。輸出是一樣的東西21 August 2013 at 8:26 pm
但是,當我改變locale_code到fr_CA
,我得到輸出21 ao�t 2013 at 8:26
這裏有兩個問題
- 爲什麼法國
August
翻譯亂碼? - 爲什麼am/pm沒有顯示?
最簡單的方式就是使用UTF-8網頁編碼,即'' – Phil
我不想妄下結論,但它是很可能''strftime'輸出在'utf8';它可能也取決於語言環境。 – Halcyon
我已經在使用''所以它不是一個解決方案。 – arvinsim