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