2012-04-23 95 views
4

我已经在我的服务器上运行区域-a,可以看到,它有安装阿拉伯语区域设置:PHP的setlocale阿拉伯语的strftime

  • ar_AE
  • ar_AE.iso88596
  • ar_AE.utf8

但是,如果我通过设置地点:

$locale = array('ar_AE', 'ar_AE.iso88596', 'ar_AE.utf8', 'ar'); 
setlocale(LC_TIME, $locale); 

,并输出:

strftime('%A %d %B', $current_date) 

显示的日期是在英语,阿拉伯语没有。

阿拉伯语是唯一不适用的语言:我正在使用的网站使用15种语言,所有其他语言都显示翻译日期。

怎么回事?

+0

'setlocale()'的返回值是什么?任何PHP警告/错误生成? – DaveRandom 2012-04-23 11:49:06

+0

刚刚'setlocale(LC_TIME,'ar_AE');'? – Jack 2012-04-23 11:59:45

+0

它不工作 – 2012-04-24 07:21:08

回答

7

这对我来说毫无问题。

setlocale(LC_ALL, 'ar_AE.utf8'); 

如果这不起作用,那么在你的PHP文件中的另一个代码的语言干扰。

+0

我试过了,但它给了我拉丁名字。这个想法是得到翻译的名字 – 2016-12-02 21:36:42

+0

@EslamSamehAhmed这是日期而不是名称。 – shnisaka 2016-12-02 21:38:25

+0

星期几和几个月的名字 – 2016-12-02 21:44:00