2010-04-13 45 views
0

在添加新文章时,Joomla总会有一个奇怪的错误,其后端显示的语言不是英语(对我来说是俄语)。 “完成发布”字段开始为当前日期,而不是俄语中的“从不”等效。对于不同语言的可靠strtotime()结果

对于php4中的某个网站,最终发现strtotime函数对于任意单词返回不同的结果。对于“从不”,它始终是-1,joomla依靠JDate实现中的这个结果。但在其他情况下,它有时会返回有效日期。对于Never(Никогда)的俄语翻译来说,情况就是这样,但对于单个“N”来说也是如此,所以如果决定将字符串更改为其他某个人,他或她将面临同样的问题。

所以下面

<?php 
     echo "Res:".strtotime("N")."<br>"; 
     echo "Res:".strtotime("Nev")."<br>"; 
     echo "Res:".strtotime("Neve")."<br>"; 
     echo "Res:".strtotime("Never")."<br>"; 
    ?> 

输出码:

Res:1271120400 
    Res:-1 
    Res:-1 
    Res:-1 

所以,有什么解决方法是在这种情况下?我不想编写特定于语言的date.php处理程序,而是修改JDate类的日期方法,但是为了检测无效的字符串,什么是语言中立的更改。

谢谢

+0

总之问题是什么?你想得到什么结果? “从不”似乎不是任何明智的日期时间值。 – 2010-04-13 13:46:32

+0

好吧,我想知道为什么其他非感性价值像俄罗斯的永不翻译被翻译成合理的日期,而不仅仅是俄语,单一的“N”也。我想由于一些默认的转换出现 – Maksee 2010-04-13 14:24:11

回答

1

我会尝试一种不同的方法。 为什么不尝试只为语言文件添加新的语言变量$example="-1",并用$example替换现有变量(“Никогда”输出),以便您可以简单地获得相同的功能性。