1

我有一个自定义目录,例如/www/phpstuff在我的include_path. 这个phpstuff目录里面是一个文件夹i18n。它包含服务器端级别的.mo文件。

Zend_Translate让你在构造函数的第二个参数中指定一个目录,我真的做不到

Zend_Translate( 'gettext', 'i18n/', 'en' );

它尝试从调用此脚本的目录中读取,是否有任何技巧我可以使用而不必/www/phpstuff/i18n明确指定?原因是我正在使用的这个框架将在许多不同的平台上使用,并且在 include_path 中指定目录比在绝对路径中更容易。

我能想到的唯一解决方法是手动读取包含路径,按分隔符拆分,检查是否有任何目录被命名为“gettext”,然后获取找到的第一个目录的绝对路径并设置它。

4

1 回答 1

1

您需要在某处定义应用程序路径。如果不想设置绝对路径,则需要设置相对路径。以这个目录结构为例:

/application/
/application/i18n/
/public_html/
/public_html/index.php

在这种情况下,应用程序路径将是:

define('APPLICATION_PATH', '../application');

你可以像这样使用它:

Zend_Translate( 'gettext', APPLICATION_PATH . '/i18n', 'en' );

希望有帮助。

于 2009-12-10T12:58:52.250 回答