4

我负责一个需要 *i18n*ed 的项目。唯一的问题是原始开发人员在编写代码时没有考虑到这一点,因此所有字符串都只是“硬编码”。

真是一团糟,我一直在看代码,发现了所有这些情况:

  • echo 调用中的字符串:

    echo "我是一个字符串";

  • echo 调用中的字符串并与 HTML 混合:

    echo "<div><span href=''>我是一个字符串</span></div>";

  • 代码的非 PHP(纯 HTML)部分中的字符串。

  • echo 调用中带有 PHP 变量的字符串:

    echo "此列表中有 $number 项";

我的问题是:你知道有什么程序可以自动完成将所有这些转换为gettext _()调用的繁琐工作吗?

这个项目很大,我正在考虑自己写(我相信我将来会再次面临这个问题)但我不想重新发明轮子。

非常感谢!

4

1 回答 1

4

您可以使用正则表达式和 sed 来替换至少其中一些回显消息。但请记住,当您使用自动文本替换时,您可能会破坏比您想要修复的更多内容。

于 2012-05-20T11:46:08.093 回答