我目前正在致力于一个网站的本地化,该网站最初只有英文。第三方公司进行了翻译,并向我们提供了包含翻译的 Excel 文件。我成功地将其转换为可以在视图中使用的 PHP 数组。我正在使用 Windows 版 Eclipse 来编辑 PHP 文件。
一切都很好,除了我需要在字符串中添加变量,例如:
'%1 is now following %2'
在阿拉伯语中,我得到了这样的字符串:
'_______الآن يتتبع _______'
我发现替换__ 与 %1 和 %2 非常困难,因为阿拉伯语部分是从右到左的字符串,而%1
, %2
会被认为是从左到右,还是从右到左,我不确定。我几乎没有得到我期望的参数顺序的结果,因为 %1 有时会出现在字符串的左侧,有时会出现在右侧,具体取决于我开始输入的位置。复制粘贴替换字符串也会产生同样奇怪的效果。
大多数时候我都会得到这样的字符串:
%2الآن يتتبع %1
%1 应位于右侧站点,%2 应位于左侧站点。这%1
显然被认为是从右到左的字符串,因为 % 出现在右侧。这%2
被认为是从左到右。
我确信以前有人提出过这个问题。有什么方法可以在 Eclipse 中轻松完成吗?或者使用更智能的编辑器来处理阿拉伯语问题?或者可能是 Windows 问题?有解决方法吗?
UPDATE
我还尝试将字符串拆分为多个字符串,但这也改变了参数的顺序:
'%1' . 'الآن تتبع' . '%2'
UPDATE 2
看来改变替换字符串会让事情变得更好。它可能与阿拉伯字符串中数字的处理方式有关。该字符串在 Eclipse 中编辑没有任何问题。参数的顺序正确,PHP 正确处理字符串:
'{var2} الآن يتتبع {var1}'
如果找不到其他解决方案,这可能是一个不错的选择。
作为一名阿拉伯语使用者,我面临很多本地化任务。虽然我没有特别遇到这个问题,但我在编辑时遇到了很多从左到右/从右到左的问题。我已经成功地与记事本++ http://notepad-plus-plus.org/.
这就是当我想要编辑阿拉伯文本时我通常会做的事情
- Open empty记事本++ *
- 将编码设置为 UTF-8(编码 -> 以 UTF-8 编码)
- 启用 RTL 模式(视图 -> 文本方向 RTL)
- 粘贴你的字符串
这是显示我如何编辑字符串的屏幕截图
*:由于某种原因,每当我打开一个已经存在的文件时,事情就会变得疯狂。所以也许我很迷信,但这一直对我有用。
Update:我第一次这样做时我很怀疑,因为琴弦looked错了,但后来我这样做了:
print_r(str_split($string));
我发现它们的顺序确实正确。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)