Ошибка генерации PoEdit .PO - PullRequest
       33

Ошибка генерации PoEdit .PO

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

Я попытался отсканировать мои скрипты для всех вызовов функции _('gettext') в новый каталог PoEdit.После анализа файлов отображается следующее сообщение об ошибке:

Filename.class.php:11: warning: Although being used in a format string position, the msgid is not a valid PHP format string. Reason: In the directive number 1, the character '"' is not a valid conversion specifier.

Filename.class.php, строка 11 выглядит так:

throw new fatalException(sprintf(_('The chosen directory "%" does not exist.'), $dir));

Файл .MO все еще создается, но на сайте не отображается переведенный текст.Оригинальный текст внутри звонков на _('gettext') отображается вместо этого.Это может быть проблемой, или есть другая причина (например, неверная информация setlocale()), что перевод не работает?Кто-нибудь может сказать мне, что означает вышеуказанное сообщение об ошибке?

Запуск Windows на WAMP Server 2.1 на моем локальном хосте с PHP 5.3.8 и Apache 2.2.17.

Спасибо.

Ответы [ 2 ]

1 голос
/ 15 декабря 2011

Кроме того, возможно, вам следует избегать кавычек, поставив перед ними обратную косую черту?

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

Как я это пропустил ...

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

Замена строки 11 проблемного файла приведенным ниже кодом исправила проблему.

throw new fatalException(sprintf(_('The chosen directory "%s" does not exist.'), $dir));

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

...