Я создаю продукт С открытым исходным кодом и меня думающий о Локализации, я читал о gettext, но, кажется, существует большая проблема, чтобы заставить это работать в различных системах (серверы, OS и т.д.).
Как Вы обработали бы это? Существует ли безопасный способ помочь gettext работать над несколькими системами? Возможно, это уже?
Отношения из Швеции / Tobias
Если я вас хорошо понимаю, у вас есть свойства зависимости в вашем коде, за этому совпадению, и введите свойства элементов управления календарями в вашем пользовательском управлении. Вы пытаетесь назначить коллекцию отображения различных элементов управления календарями в свойство зависимости того же имени в вашем коде.
Вы можете просто сделать это по строке кода:
Это. Селекцияdates = slavecalendar1.sevatedDates
в соответствующем событии, который зажигает, когда добавляется выбранная дата.
Даже если вы устанавливаете связывание с OnewaytoSource
, выставленныеdates =
Кусок кода - это задание. Поскольку свойство «Выставлено» не имеет установки, невозможно написать этот кусок кода.
Здесь Вы можете найти ссылку на документацию календаря управления
-121--3418731-Я рекомендую взглянуть на Zend_Translate , Zend_Locale и Zend_Date . Я только начинаю баллов с ними, но для меня, они уже выглядят как действительно хорошее, чистое и современное решение для интернационализации, в отличие от хаоса, который является GetText.
Введение в Zend_Translate перечислены ряд сильных аргументов, зачем выбрать его (или что-то подобное) по GetText.
В многоязычных приложениях Содержание должно быть переведено в Несколько языков и отображение контента в зависимости от языка пользователя. Папирофон предлагает уже несколько способов обращаться Такие проблемы, однако PHP Раствор имеет некоторые проблемы:
Несвязанный API: нет единого API для другого источника форматы. Использование GetText для Пример очень сложный.
PHP поддерживает только GetText и родной массив: сама PHP предлагает только Поддержка массива или GetText. Все Другие форматы источников должны быть закодированы вручную, потому что нет родных служба поддержки.
Нет обнаружения языка по умолчанию: язык по умолчанию Пользователь не может быть обнаружен без более глубокого знание фона для разные веб-браузеры.
GetText не Безопасен в потоке: библиотека GetText PHP не тема безопасно, и он не должен использоваться в многопоточная среда. Это до проблемы с самой GetText, а не PHP, но это существующая проблема.
Zend Framework's Zend_Translate является наиболее гибким, что я видел. Он не обязательно нужен модуль поддержки GetText в стороне PHP, так как он читает сам формат .mo-двоичный формат.
Языковые блоки должны быть включены в программу. Они могут быть в базе данных или в XML-файлах. Это позволит добавлять дальнейшие языки в более поздний момент времени.
Тогда все ваше приложение должно сделать, это определить локализацию пользователем и служить подходящим текстом для каждой ситуации.