Question

J'ai un répertoire personnalisé, par exemple /www/phpstuff qui est dans mon include_path. A l'intérieur de ce répertoire est un phpstuff i18n de dossier. Il contient niveau côté serveur fichiers .mo.

Zend_Translate vous permet de spécifier un répertoire dans le second paramètre du constructeur, je ne peux pas vraiment faire

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

Il essaie de lire à partir du répertoire dans lequel ce script est appelé, est-il sorte de truc que je peux utiliser pour avoir de ne pas préciser explicitement /www/phpstuff/i18n? Raison d'être ce cadre, je travaille avec sera utilisé sur plusieurs plateformes différentes, et il serait plus facile spécifier un répertoire dans un include_path qu'un chemin absolu.

La seule solution que je peux venir avec lit manuellement le chemin d'inclusion, division par le séparateur, vérifier si l'un des répertoires sont nommés « gettext », puis saisir le chemin absolu du premier répertoire trouvé et mettez-le.

Était-ce utile?

La solution

Vous devrez définir le chemin d'application quelque part. Si vous ne souhaitez pas définir un chemin absolu, vous devrez définir un chemin relatif. Prenez cette structure dir par exemple:

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

Le chemin d'application dans ce cas serait:

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

Et vous pouvez l'utiliser comme ceci:

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

L'espoir qui aide.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top