codeigniter 翻译月份名称的最佳方法

ki1q1bka  于 8个月前  发布在  其他
关注(0)|答案(4)|浏览(48)

我正在使用CodeIgniter!翻译月份名称的最佳方法是什么?我在mysql timestamp中有一个日期,像这样:2012-09-22 11:21:53
我可以用php的date()函数将其转换为'September 22, 2012'。我想将'September'重命名为'Sentýabr'。set_locale()函数可以做到这一点。它是Turkmen Language。谢谢
好的,我创建了一些php文件来单独检查它,就像这样:
cool.php

<?php setlocale(LC_ALL,'ru_RU');
echo strftime('%B',time());
?>

九月归来。可能有什么问题。
我有

/* Set locale to Turkmen */
  setlocale(LC_ALL, 'tk');

echo strftime( '%B',time());

结果:9月返回
我需要九月份用我的语言寄回来

j2cgzkjk

j2cgzkjk1#

你可以用str_ireplace()和数组来表示英文名字,也可以用同样的顺序来表示土库曼语的名字。
大概是这样的:

$nmeng = array('january', 'february', ..);
$nmtur = array('ocak', 'subat', ...);
$dt = 'September 22, 2012';
$dt = str_ireplace($nmeng, $nmtur, $dt);
ltskdhd1

ltskdhd12#

使用setlocale()strftime ...
在Linux上运行$ locale -a来查看是否安装了所需的语言环境并获取其名称值字符串。

setlocale(LC_TIME, 'ru_RU');
echo strftime('%B %e, %Y', strtotime('2012-09-22 11:21:53'));
  • 编辑:*

如果您使用的是Windows服务器,则将%e更改为%d%e在Windows中不起作用)。

echo strftime('%B %d, %Y', strtotime('2012-09-22 11:21:53'));

对于Windows,check here to see supported format.

l3zydbqr

l3zydbqr3#

最好的方法来翻译月份名称把他们放在语言文件,并呼吁它喜欢阅读这里如何使用语言文件codeigniter Language library你可以在你的项目中使用一遍又一遍,如果你有双语网站。

$this->lang->line('September');

your english language file 
$lang['january'] = 'january';
$lang['february'] = 'february';
...
$lang['September'] = 'September';

your turkish language file 

$lang['january'] = 'ocak';
$lang['february'] = 'subat';
...
$lang['September'] = 'Eylül';
mzmfm0qo

mzmfm0qo4#

将其添加到index.php文件顶部附近:

/* Set locale to Turkmen */
setlocale(LC_ALL, 'tk');

相关文档如下:http://php.net/manual/en/function.setlocale.php
另外,@xdazz是正确的,你应该将它与strftime而不是date()函数结合起来。
您可能需要确认“tk”用于土库曼语。

相关问题