PHP Symfony i18n для неоднозначности - PullRequest
0 голосов
/ 31 декабря 2010

Как мы можем устранить неоднозначность омонимов в рамках Symfony i18n?

Это когда у нас одно и то же английское слово используется для разных значений, и оно должно переводиться на разные слова в разных точках. Подобно «свободному», как в «свободном пиве», так и в «свободе слова», и должно переводиться на другие слова на другом языке. Большинство сценариев, таких как Wordpress, используют для этого контексты.

Я рассматриваю возможность использования некоторых идентификаторов, которые включают названия разделов. Я думаю, что использование идентификаторов является правильным методом для i18n в любом случае. Однако я думаю, что Symfony i18n не поддерживает использование ID + по умолчанию, например __('ui:generic:yes','Yes'). Поэтому я рассматриваю возможность добавления словаря для английского языка, включая необходимые мне идентификаторы.

Есть идеи для более подходящего (официально или широко принятого) способа сделать это? Какие-либо передовые практики, образцы, справочная информация для Symfony i18n / по умолчанию / context?

Ответы [ 2 ]

0 голосов
/ 24 мая 2011

Правильный способ сделать это с Symfony - использовать каталоги.

<?php
  echo __('your message',array(),'catalogname');
?>
0 голосов
/ 31 декабря 2010

Я использую очень похожий способ в своих приложениях: я использую ключи перевода как это: homepage_main_title. И я использую словарь для английского языка: таким образом, я могу обнаружить непереведенный текст, даже если я просматриваю сайт на английском языке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...