如何在没有 gettext 模块的情况下使用编译后的 gettext .mo 文件?

发布于 2024-10-31 10:26:11 字数 181 浏览 1 评论 0原文

我正在尝试找到一种使用 gettext 和朋友的方法,而不依赖于官方 gettext 模块,我发现它并不是到处都安装的,有时会根据操作系统和服务器配置产生不同的结果。

I'm trying to find a way to use gettext and friends without depending on the official gettext module, which I've found to not be installed everywhere and sometimes yields different results depending on the OS and server configuration.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

柠檬色的秋千 2024-11-07 10:26:11

我只是制作了一个库,它可以自动加载 po 文件,更改语言并翻译视图中 {t} 和 {/t} 之间的所有文本,我发布在这里以防有人想使用它而不是调用 gettext 函数视图:

http://www.chuongduong.net/page/15/codeigniter-gettext-with-smarty-or-parser-template-without-php-code-in-view.html

视图代码可能是:

<html>
<head>
<title>{blog_title}</title>
</head>
<body>

<h3>{blog_heading}</h3>
{blog_entries}

<h5>{t}Title is{/t}  {title}</h5>

<p>{t 1="<b>" 2="</b>"}Click here %1to see%2 me{/t}{body}</p>

<p>{t 1="{id}" 2="author"}The id is: %1 wrote by %2{/t}</p>

<p>{t 1="<a href=\"link here\">" 2="</a>"}Please lick on me%2{/t}</p>

{/blog_entries}

</body>

</html>

I just make a library which can auto load the po file, change languages and translate all text between {t} and {/t} in the view, I posted here in case some one want to use it instead calling the gettext function in the view:

http://www.chuongduong.net/page/15/codeigniter-gettext-with-smarty-or-parser-template-without-php-code-in-view.html

The view code might be:

<html>
<head>
<title>{blog_title}</title>
</head>
<body>

<h3>{blog_heading}</h3>
{blog_entries}

<h5>{t}Title is{/t}  {title}</h5>

<p>{t 1="<b>" 2="</b>"}Click here %1to see%2 me{/t}{body}</p>

<p>{t 1="{id}" 2="author"}The id is: %1 wrote by %2{/t}</p>

<p>{t 1="<a href=\"link here\">" 2="</a>"}Please lick on me%2{/t}</p>

{/blog_entries}

</body>

</html>
清风不识月 2024-11-07 10:26:11

gettext 函数有一些用户态 php 实现。

  • 一个是 gettext.php (我写的,PD,但没有经过很好的测试)
  • 另一个 php-gettext (GNU GPL,相当普遍)
  • Zend 框架还提供了 gettext 适配器。不确定是否依赖原生 PHP 函数;但它很可能会重新实现。

There are a few userland php implementations of the gettext functions.

  • One is gettext.php (I wrote that, PD, but not very well tested)
  • And the other one php-gettext (GNU GPL, quite widespread)
  • The Zend Framework also provides an adapter for gettext. Not sure if it relies on the native PHP functions; but it might very well come with its own reimplementation.
那请放手 2024-11-07 10:26:11

我最终分叉了 PHP-gettext (不是 GNU GPL 的)并将其修改为透明插入。它为丢失的 gettext 模块创建了一个非常简单的一行修复。

require( "PHP-Gettext/Autoload.php" );

I ended up forked PHP-gettext (not the GNU GPL one) and modifying it to work as a transparent drop in. It creates a very simple one line fix for a missing gettext module.

require( "PHP-Gettext/Autoload.php" );
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文