Intl extension: установка php_intl.dll

Я пытаюсь найти php_intl.dll и установить его.

Есть ли у кого-нибудь советы?

Ответ 1

Все пакеты на http://windows.php.net/download/ содержат php\_intl.dll который находится в подкаталоге ext/.
Все, что вам нужно сделать, это проверить, указывает ли ваш extension_dir на правильный каталог и добавить (или раскомментировать) директиву extension=php\_intl.dll.

Ответ 2

Чтобы расширение php_intl.dll работало правильно, вам нужно иметь следующие файлы в папке в PATH:

  • icudt36.dll
  • icuin36.dll
  • icuio36.dll
  • icule36.dll
  • iculx36.dll
  • icutu36.dll
  • icuuc36.dll

По умолчанию они сидят в вашем каталоге PHP, но этот каталог не обязательно находится в вашем PATH (это было не для меня, используя xampp)

Это должно быть на вашем глобальном пути, а не только на вашем пути пользователя. Чтобы установить глобальный путь, перейдите к системной информации (windows key + PAUSE), затем "Дополнительные системные настройки" (Vista +) или "Дополнительно" (XP) и нажмите кнопку "Переменные среды" и добавьте соответствующую директорию в переменную PATH в Системе Список переменных.

Ответ 3

У меня установлены XAMPP 1.8.3-0 и PHP 5.5.0.

1) изменить php.ini:

из

;extension=php_intl.dll

to

extension=php_intl.dll

Примечание. После изменения необходимо сохранить файл (php.ini), а также перезапустить сервер Apache.

2) Просто скопируйте все файлы icu * * * *.dll:

из

C:\XAMPP\PHP

к

C:\XAMPP\Apache\Bin

Затем работает intl extension!!!

Ответ 4

Имел ту же проблему... Я нашел файлы, необходимые для поиска моего диска для icu **. dll и нашел те, которые перечислены выше, но с 46 вместо 36 в папке php. Я скопировал их в файл apache/bin и попытался запустить apache и, наконец, начал работу. На странице "Проверки сервера" теперь она изменилась с "Желтый" на "Зеленый". Надеюсь, это поможет.

Ответ 5

Если вы прочитали сообщение об ошибке, "icuuc36.dll" отсутствует. Проблема в том, что у вас нет PHP-каталога в вашем PATH, или вы можете скопировать все "intl" файлы из каталога php в каталог apache\bin. Они есть: icudt36.dll icuin36.dll icuio36.dll icule36.dll iculx36.dll icutu36.dll icuuc36.dll

Ответ 6

У меня PHP 5.3.1 и Apache

Когда я добавляю extension=php_intl.dll в php.ini и перезапускаю apache, появляется предупреждение, что "запрошенная операция не удалась"

И эта ошибка на мониторе событий:

Faulting application name: httpd.exe, version: 2.2.14.0, time stamp: 0x4ac181d6
Faulting module name: php5ts.dll, version: 5.3.1.0, time stamp: 0x4b051b35
Exception code: 0xc0000005

Проблема заключалась в том, что некоторые библиотеки DLL, такие как icudt36.dll, отсутствовали (замечено с помощью sysinternals ProcMon), я скачал zp версию php 5.3.1 и распаковал все библиотеки DLL в папку PHP. Это решило проблему.

Ответ 7

Для WampServer 2.5 (Apache 2.4.9 и PHP 5.5.12):

В по умолчанию у меня был php_intl включен (вы можете включить его, когда вы left click on the wamp icon in the system tray > PHP > PHP extensions и проверьте, не отмечено ли это)

Чтобы он работал правильно, мне пришлось скопировать:

C:\WAMP\Bin\PHP\php5.5.12\СИС ** 51.dll

(всего 8 файлов)

до

C:\WAMP\Bin\Apache\apache2.4.9\Bin

Затем просто перезапустите wamp, и все будет в порядке.

Ответ 8

Я решил эту проблему, добавив каталог PHP в переменную PATH. Я просто добавил переменную ;C:\xampp\php to Path в переменные среды Windows.

Ответ 9

У меня есть IIS 7 и установлен PHP с помощью установщика Microsoft Web Platform в Windows 7. В IIS перейдите в PHP Manager на главной странице настроек → Расширения PHP → Включить или отключить расширение. Расширение Intl по умолчанию отключено.

Я надеюсь, что это поможет

Ответ 10

Если у вас есть ошибка файла msvcp110.dll. Вам нужно скачать право .dll или просто перейти сюда http://www.microsoft.com/es-es/download/confirmation.aspx?id=30679 и установить vcredist_x64.exe и vcredist_x86.exe, это сработало для меня.

Ответ 11

Когда я столкнулся с этой проблемой, он был отсортирован с использованием следующих шагов:

Изменить php.ini:

Сделайте

; расширение = php_intl.dll к

расширение = php_intl.dll Просто скопируйте все файлы icu * * * *.dll(любой файл icu с расширением dll) из

C:\xampp\php для C:\xampp\apache\bin

Также, если у вас есть ошибка файла msvcp110.dll. Вам нужно скачать право .dll или просто перейти сюда http://www.microsoft.com/es-es/download/confirmation.aspx?id=30679 и установить vcredist_x64.exe и vcredist_x86.exe.

Теперь расширение intl должно работать: -)

Ответ 12

/Digger here/

Перемещение файлов icu*****.dll на /ext/, похоже, также устраняет проблему.

(Если вы, конечно, указали каталог расширения)

Ответ 13

В моей панели управления xampp нажмите "Конфигурация", чтобы открыть php.ini

удалить; в

; расширение = php_intl.dll

Затем перезапустите apache.

Ответ 14

Есть лучший способ сделать это.

У меня была такая же проблема с расширениями ldap, intl, curl php. Я решил эти проблемы следующими способами:

Сначала вы должны проверить, были ли эти расширения включены в файле php.ini, удалив точку с запятой (;) перед следующими строками:

;extension=php_intl.dll
;extension=php_ldap.dll
;extension=php_curl.dll

Теперь вы можете напрямую загрузить эти необходимые DLL файлы (например, libeay32, libssh2, ssleay32, icu **. dll) из файла httpd.conf(файл конфигурации apache). Вам не нужно выполнять какие-либо другие операции, например, копировать их в каталог apache bin или в каталог php ext. Просто добавьте их прямо в файл apache httpd.conf.

Обратите внимание, что пример followng для PHP версии 5.5.x.

LoadFile  "C:/php/icudt51.dll"
LoadFile  "C:/php/icuin51.dll"
LoadFile  "C:/php/icuio51.dll"
LoadFile  "C:/php/icule51.dll"
LoadFile  "C:/php/iculx51.dll"
LoadFile  "C:/php/icutest51.dll"
LoadFile  "C:/php/icutu51.dll"
LoadFile  "C:/php/icuuc51.dll"

LoadFile  "C:/php/libeay32.dll"
LoadFile  "C:/php/libssh2.dll"
LoadFile  "C:/php/ssleay32.dll"

Что это. Теперь перезагрузите ваш апач или wamp, и вам хорошо идти.

Ответ 15

  • В php-расширениях вашего сервера wampserver убедитесь, что intl проверен.
  • проверьте ваш файл extension_dir в файле php/v7.0/php, чтобы убедиться, что каталог не комментируется, и он является точным.
  • (Не знаю, помогло ли это, но я сделал все три). В вашем списке расширений в том же файле, что и выше, включите файл int в том же формате, что и остальные (если он не включен). Все лучшее

Ответ 16

У меня возникли проблемы с запуском intl для запуска с использованием PHP 7.1.7 и PhpStorm в Windows 10. На основании других ответов здесь я могу сказать, что это проблема с зависимостью PATH/DLL, но я не мог найти все необходимые файлов даже после (повторной) установки распространяемого Visual С++.

В конце концов я пошел искать мой диск C: vcr *.dll и нашел копию vcruntime140.dll в моем каталоге C:\Program Files\Mozilla Firefox. Итак, помимо внесения этих изменений в php.ini:

extension_dir = "ext"
extension=php_intl.dll

Я также установил PATH во время выполнения только для каталога PHP (в моем случае, C:\Program Files\PHP\7.1.7) и каталога Firefox (выше), и он НАКОНЕЦ работает! Я знаю, что для этого требуется больше, чем просто файл vcruntime140.dll, но другие требуемые DLL должны быть также в каталоге FF (есть несколько десятков, но я не стал выяснять, какие из них необходимы).

Ответ 17

В моем случае добавление каталога PHP в PATH в пользовательской среде не работало. После некоторого тестирования я обнаружил, что его нужно добавить в системную переменную PATH (я не знаю, как называется эта часть окна настройки системы, потому что у меня польская версия Windows).

Ответ 18

Вы можете ввести эту команду в терминале: sudo apt-get install php-intl

Ответ 19

Пакет уже включен в расширения для PHP 7.2 и выше, и вам просто нужно раскомментировать следующую строку в php.ini

extension=intl