Где использовать инструментальное средство для перевода Платформы Зенда

Кажется, что исключение status code 141 указывает на то, что на устройстве не осталось свободного места, поэтому вам нужно сначала проверить это.

6
задан Stefan Gehrig 21 November 2008 в 09:07
поделиться

2 ответа

В первую очередь, я предложил бы использовать полные фразы в качестве основания для Вашего перевода. Со словами у Вас всегда есть проблема, что языки не последовательны когда дело доходит до структуры предложения.

Затем необходимо выбрать один из доступных адаптеров Zend_Transalate: Массив, Csv, Gettext, Ini, Tbx, Tmx, QT, Xliff или XmlTm. Большинство из них является адаптерами к промышленным стандартам для того, чтобы хранить информацию перевода, таким образом, она, вероятно, была бы достаточна, выбрали ли Вы Array, Csv или Ini в течение начала и для простоты использования. См. 49.2.1. Как решить который адаптер перевода использовать в руководстве Платформы Зенда.

// setup your translation
$translate = new Zend_Translate('csv', '/my/path/source-de.csv', 'de');
$translate->addTranslation('/my/path/source-en.csv', 'en');
// add the translation adapter to the registry
Zend_Registry::set('Zend_Translate', $translate);

Как существует a Zend_View_Helper_Translate тот доступ стандартизированный Zend_Registry запись Zend_Translate как источник перевода по умолчанию, можно использовать следующее в представлениях:

[...]
<title><?php echo this->translate('Title'); ?></title>
[...]
<p>You can also do <?php echo $this->translate('Hello %1$s', $this->userName); ?></p>
[...]

Обратите внимание на то, что это только - краткое введение в Zend_Translate и ни в коем случае полная презентация функциональности, обеспеченной этим компонентом. Например, существует много, чтобы быть сказанным об определении локали, которую будет использовать адаптер перевода.

Я предположил бы, что Вы читаете следующее в руководстве Платформы Зенда, потому что локализация может быть сложным вопросом и Zend_Translate не может быть описан полностью в здесь:

12
ответ дан 8 December 2019 в 18:43
поделиться

Нет, Вы не должны переводить каждое слово. Идея перевода в этом смысле больше идеи перевода сообщения.

В моем текущем проекте мы делаем два типа переводов. Когда это просто будет кратким текстом, мы вводим это непосредственно в исходный код в целях удобочитаемости.

Т.Е.

<?=$this->translate('Add');?>
<?=$this->translate('Delete');?>
<?=$this->translate('Are you sure you want to delete %1$s?', $thing);?>

Но если сообщение намного длиннее, мы обычно следуем стандарту для маркировки его для системы перевода:

<?=$this->translate('controller-action_form-information');?>

Так как идея - это, можно затем заменить это очень длинным текстом в инструментальном средстве для перевода, и это сохраняет сценарий представления опрятным.

1
ответ дан 8 December 2019 в 18:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: