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

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

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

它试图在此脚本执行的目录读取,有什么样的伎俩,我可以使用没有明确指定/www/phpstuff/i18n?原因是这个框架我会用在很多不同的平台上使用的工作,并在include_path中指定目录不是绝对路径会更容易些。

唯一的解决方法我可以想出手动读取包括路径,分割由分离器,检查是否任何的目录被命名为“的gettext”,然后抓住找到的第一个目录的绝对路径,并设置它。

有帮助吗?

解决方案

您需要的地方定义应用程序的路径。如果你不希望设置一个绝对路径,你需要设定一个相对路径。就拿这个目录结构:

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

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

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

和您可以使用它是这样的:

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

希望有所帮助。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top