将日期语言从英语更改为匈牙利语

时间:2019-04-06 06:07:32

标签: php date

假设我想将April 5, 2019更改为2019. április 5,从英语到匈牙利语。

仅供参考,我的日期值是使用date('F d, Y', strtotime($row['release_date']))作为数据源从网站自动获取的

Strftime不适用于我,因为它仅更改本地时间。

我已经尝试过这种方法,但是它不起作用,它仍在显示原始语言

setlocale(LC_TIME, "HU");
utf8_encode(strftime(date('F', strtotime($row['release_date']))));

2 个答案:

答案 0 :(得分:1)

您还可以查看The IntlDateFormatter class

  

日期格式化程序是一个具体的类,它使依赖于语言环境   使用模式字符串和/或固定格式格式化/解析日期   模式。

     

此类表示ICU日期格式化功能。它允许   用户以本地化格式显示日期或将字符串解析为   使用模式字符串和/或固定模式的PHP日期值。

我这样做的主要原因是: 每个系统都是不同的,并且您的PHP和服务器操作系统的发行版可能并不支持所有语言环境,这使得setlocale对于较少使用的语言环境几乎没有用。

答案 1 :(得分:0)

尝试以下解决方案以匈牙利语获取日期。

setlocale(LC_TIME, "hu_HU");
echo utf8_encode(strftime('%B %d, %Y', strtotime($row['release_date'])));

如果仍然得到相同的结果,那么这一定是语言环境问题。

要解决此问题,请使用here中提到的过程在您的计算机上安装语言环境(如果您使用的是Ubuntu服务器)(我假设此处是HU)。

  
      
  1. 检查支持哪些语言环境:

         

    locale -a

  2.   
  3. 添加所需的语言环境(例如hu):

         

    sudo locale-gen hu_HU

  4.   
  5. 运行此更新命令

         

    sudo update-locale

  6.