我试图创建PHP内部日期()函数的条件翻译。是否有可能以某种方式重新定义内部变量 - 例如 - 日期(“M”),日期(“Y”)等,使得不同的字符串被送入PHP函数的本试验的基础上,余数为:为多语言网站翻译PHP日期()
if (ICL_LANGUAGE_CODE == 'fr') { }
以下是的一个工作示例我用于日期模块的代码。由于$date
被定义为包含在此定义中的许多变量,因此为了避免必须在每个关键字中重新定义变量100次或更多次,有条件地重新定义PHP date()
中的变量非常重要。
if($start <= $end):
if($start == $end):
//Month Day, Year
$date = date('F', $start).' '.date('j',$start).', '.date('Y', $start);
else:
if($start_year == $end_year):
if($start_month == $end_month):
//Month Day - Day, Year
$date = date('F', $start).' '.date('j',$start).' - '.date('j', $end).', '.date('Y', $start);
else:
//Month Day - Month Day, Year
$date = date('F', $start).' '.date('j',$start).' - '.date('F', $end).' '.date('j', $end).', '.date('Y', $start);
endif;
else:
//Month Day, Year - Month Day, Year
$date = date('F', $start).' '.date('j',$start).', '.date('Y', $start).' - '.date('F', $end).' '.date('j', $end).', '.date('Y', $end);
endif;
endif;
endif;
这看起来不错,我的问题是 - 在`格式='日期格式字符... fr'的上下文中,这些变量(例如'm','d ','M')等正在重新定义为法语? – Brian 2011-02-12 02:17:11
而我的致歉很密! :( – Brian 2011-02-12 02:17:28
'date()`手册页(http://php.net/date)表示在非英文日期使用`setlocale()`和`strftime()`,但基本上应用相同的格式字符串规则那里 - 它不一定是一个字符,它可以是一串格式化字符。 – 2011-02-12 02:21:53