Проблема с функцией locale_get_default() на локальном хосте

Я использую wampserver на локальном хосте с;

  • PHP 5.3.13
  • Апач 2.2.22
  • Включено расширение php_intl.dll

Но я получил следующую ошибку при использовании функции locale_get_default()

Фатальная ошибка: вызов неопределенной функции locale_get_default() в

Или используя функцию Locale::getDefault()

Неустранимая ошибка: класс «Язык» не найден в


person Bora    schedule 11.12.2013    source источник


Ответы (2)


snip не прочитал:

Вы уверены, что расширение загружено? (См. phpinfo();)

person Ronald Swets    schedule 11.12.2013
comment
Я не мог видеть в phpinfo, но я был включен в настройках и проверен в файле php.ini. Из-за чего? - person Bora; 11.12.2013
comment
Если он не отображается как загруженный в phpinfo(); он не загружен, следовательно, ошибка неопределенной функции. Вы уверены, что .dll является подходящей версией для используемой версии PHP? - person Ronald Swets; 11.12.2013
comment
Я решил по следующей ссылке: forum.wampserver.com/read.php?2, 80704,116793 спасибо - person Bora; 11.12.2013

Решено с помощью следующей ссылки

http://forum.wampserver.com/read.php?2,80704,116793

Хорошо, я получил его на работу. Похоже, Apache не может найти файлы icu*.dll (в каталоге php).

Итак, одно из решений — добавить «C:\wamp\bin\php\php5.3.9» (или аналогичный каталог) в системный PATH.

Другое решение — скопировать файлы icu*.dll в каталог bin вашего apache.

Третий вариант — скопировать файлы icu*.dll в системный каталог Windows (system32 или SysWOW64).

person Bora    schedule 11.12.2013
comment
Лучшее решение — скопировать файлы icu в папку Apache. Конечно, когда вы переключаете версию PHP или Apache, вам нужно убедиться, что вы делаете это снова. Если вы скопируете их в system32 или добавите папку в путь, он будет менее гибким, и вы можете получить не те файлы, на которые указывают. - person RiggsFolly; 13.12.2013