добавление функциональности i18n в laminas - PullRequest
0 голосов
/ 28 марта 2020

Новичок в Laminas, я следую уроку «Начало работы: скелетное приложение».

Ближе к концу я выясняю, что я, вероятно, ответил «нет» на вопрос об установке i18n и здесь я с фатальной ошибкой: Uncaught Laminas \ I18n \ Exception \ ExtensionNotLoadedException ...

Проблема должна быть решена с помощью [Github] https://github.com/laminas/laminas-mvc-i18n и с установщиком компонента. Но у меня все еще есть ошибка, даже после перезапуска Apache.

Оглядываясь назад на установку установщика компонентов laminas и laminas- mvc -i18n, все выглядит нормально. И что?

РЕДАКТИРОВАТЬ 1 Может быть, я не правильно прочитал? Вот полная ошибка:

Неустранимая ошибка: Uncaught Laminas \ I18n \ Exception \ ExtensionNotLoadedException: для компонента Laminas \ I18n \ Translator требуется расширение intl PHP в C: \ xampp \ htdocs \ laminas- mvc -skeleton \ vendor \ laminas \ laminas-i18n \ src \ Translator \ Translator. php: 258 Трассировка стека: # 0 C: \ xampp \ htdocs \ laminas- mvc -skeleton \ vendor \ laminas \ laminas-i18n \ src \ Translator \ Translator. php (354): Laminas \ I18n \ Translator \ Translator-> getLocale () # 1 C: \ xampp \ htdocs \ laminas- mvc -скелет \ vendor \ laminas \ laminas- mvc -i18n \ src \ Translator. php (71): Laminas \ I18n \ Translator \ Translator-> translate ('Laminas MVC Ske ...', 'default', NULL) # 2 C: \ xampp \ htdocs \ laminas- mvc -скелет \ vendor \ laminas \ laminas-view \ src \ Helper \ HeadTitle. php (163): Laminas \ Mvc \ I18n \ Translator- > translate ('Laminas MVC Ske ...', 'default') # 3 C: \ xampp \ htdocs \ laminas- mvc -skeleton \ vendor \ laminas \ laminas-view \ src \ Helper \ HeadTitle . php (86): Laminas \ View \ Helper \ HeadTitle-> La minas \ View \ Helper {closure} ('Laminas MVC Ske ...') # 4 C: \ xampp \ htdocs \ laminas- mvc -skeleton \ vendor \ laminas \ laminas-view \ src \ Helper \ HeadTitle. php (70): в C: \ xampp \ htdocs \ laminas- mvc -skeleton \ vendor \ laminas \ laminas-i18n \ src \ Translator \ Translator. php в строке 258

Так что проблема в переводчике. Какой переводчик? Я использую только Engli sh.

EDIT 2

Поэтому я попробовал снова, используя новую установку с нуля. На этот раз я подтвердил «да» на все варианты, т.е. я ответил положительно, когда его попросили установить i18n и все другие варианты.

И я протестировал встроенный веб-сервер PHP вместо Apache.

Результат та же ошибка!

РЕДАКТИРОВАТЬ 3

Список расширений, которые у меня есть в composer. json

    "laminas/laminas-component-installer": "^1.0 || ^2.1",
    "laminas/laminas-development-mode": "^3.2",
    "laminas/laminas-mvc": "^3.1.1",
    "laminas/laminas-cache": "^2.9.0",
    "laminas/laminas-db": "^2.10.0",
    "laminas/laminas-mvc-form": "^1.0",
    "laminas/laminas-json": "^3.1.2",
    "laminas/laminas-log": "^2.11",
    "laminas/laminas-mvc-console": "^1.2.0",
    "laminas/laminas-mvc-i18n": "^1.1.1",
    "laminas/laminas-mvc-plugins": "^1.0.1",
    "laminas/laminas-psr7bridge": "^1.2.0",
    "laminas/laminas-session": "^2.9.1",
    "laminas/laminas-di": "^3.1.1"

1 Ответ

1 голос
/ 03 апреля 2020

Как говорит ошибка:

Неустранимая ошибка: Uncaught Laminas \ I18n \ Exception \ ExtensionNotLoadedException: компонент Laminas \ I18n \ Translator требует расширения intl PHP

вам не хватает расширения INTL PHP в вашей установке xampp. Обратитесь к руководству xampp для установки отсутствующего расширения.

Это правда, что я не вижу i18n при запуске php -info. Должен ли быть там?

Да, действительно.

...