2007年12月20日 星期四

Moodle中文日期顯示問題


Moodle日期顯示格式較國際化,常常為日-月-年,欲修改為我們常用的格式可修改moddle資料夾下lang/en_utf8/langconfig.php


首先看看php日期顯示格式化的函式strftime():


傳回的字串可以依下列的格式而定:


 



  • %a 星期幾的縮寫。
  • %A 星期幾的全名。
  • %b 月份名稱的縮寫。
  • %B 月份名稱的全名。
  • %c 本地端日期時間較佳表示字串。
  • %d 用數字表示本月的第幾天 (範圍為 00 至 31)。
  • %H 用 24 小時制數字表示小時數 (範圍為 00 至 23)。
  • %I 用 12 小時制數字表示小時數 (範圍為 01 至 12)。
  • %j 以數字表示當年度的第幾天 (範圍為 001 至 366)。
  • %m 月份的數字 (範圍由 1 至 12)。
  • %M 分鐘。
  • %p 以 'AM' 或 'PM' 表示本地端時間。
  • %S 秒數。
  • %U 數字表示為本年度的第幾周,第一個星期由第一個周日開始。
  • %W 數字表示為本年度的第幾周,第一個星期由第一個周一開始。
  • %w 用數字表示本周的第幾天 ( 0 為周日)。
  • %x 不含時間的日期表示法。
  • %X 不含日期的時間表示法。
  • %y 二位數字表示年份 (範圍由 00 至 99)。
  • %Y 完整的年份數字表示,即四位數。
  • %Z 時區或名稱縮寫。
  • %% % 字元。

 moodle原始的langconfig.php如下:


$string['alphabet'] = 'A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z';
$string['backupnameformat'] = '%%Y%%m%%d-%%H%%M';
$string['firstdayofweek'] = '0';
$string['locale'] = 'en_AU.UTF-8';
$string['localewin'] = 'English_Australia.1252';
$string['localewincharset'] = '';
$string['oldcharset'] = 'ISO-8859-1';
$string['strftimedate'] = '%%d %%B %%Y';
$string['strftimedateshort'] = '%%d %%B';
$string['strftimedatetime'] = '%%d %%B %%Y, %%I:%%M %%p';
$string['strftimedaydate'] = '%%A, %%d %%B %%Y';
$string['strftimedaydatetime'] = '%%A, %%d %%B %%Y, %%I:%%M %%p';
$string['strftimedayshort'] = '%%A, %%d %%B';
$string['strftimedaytime'] = '%%a, %%H:%%M';
$string['strftimemonthyear'] = '%%B %%Y';
$string['strftimerecent'] = '%%d %%b, %%H:%%M';
$string['strftimerecentfull'] = '%%a, %%d %%b %%Y, %%I:%%M %%p';
$string['strftimetime'] = '%%I:%%M %%p';
$string['thischarset'] = 'UTF-8';
$string['thisdirection'] = 'ltr';
$string['thislanguage'] = 'English';


 


我們可依我們的需要修改如下:


原來:   $string['strftimedate'] = '%%d %%B %%Y';


修改為:$string['strftimedate'] = '%%Y年 %%m月 %%d日';
則日期原為  6 July 2007 --> 2007年 7月 6日



沒有留言:

張貼留言