PHP - ZendFramework: как использовать Zend_Translate без всего фреймворка? - PullRequest
4 голосов
/ 20 сентября 2011

Я создаю простой PHP-сайт и хочу перевести его на 2 языка (испанский, английский). Я прочитал несколько вопросов здесь, и все рекомендуют Zend_Translate. Я прочитал документацию и, кажется, довольно хорошо.

Я прочитал, что могу использовать компонент Zend_Translate, не используя весь Framework, только этот компонент, но я не могу. Я попробовал все. Я скачал фреймворк и поместил его в подкаталог libs. И я попробовал несколько способов импортировать его:

// First try
require('libs/Zend/Translate.php'); //Fail

//Second try
require('libs/Zend/Loader.php'); //Good
Zend_Loader::loadClass('Zend_Translate'); //Fail

Можете ли вы помочь мне, пожалуйста?

Ответы [ 3 ]

2 голосов
/ 01 октября 2013

Благодаря этому посту я наконец смог заставить его работать!

Для таких людей, как я, которые ищут рабочий пример использования zend_translate без использования Zend Framework, вот оно:

https://github.com/26medias/zend_translate

Если вы используете Windows (как я), вам сначала нужно установить gettext: http://gnuwin32.sourceforge.net/packages/gettext.htm

Чтобы редактировать переводы:

  1. open / locale / [имя локали] /messages.po
  2. добавить переводы
  3. Выполнить translate.bat (если вы не установили gettext в каталог по умолчанию, обновитепуть к папке bin).Он создаст / обновит файл messages.mo.

И все готово!

1 голос
/ 20 сентября 2011

За @santiagobasulto, я создаю ответ на этот вопрос.

Убедитесь, что на вашем пути есть Zend/, поскольку Zend Framework ожидает, что эта папка будет там.

1 голос
/ 20 сентября 2011

Вы должны поместить свои «libs» в ваш путь включения.Все довольно просто:

set_include_path( implode( PATH_SEPARATOR, array(
                '/path/to/your/libs',
                get_include_path(),
            )
        )
    ); 
...