Xampp Intl extension on windows 10 can't be installed
我尝试在Xampp(php 7.2.5)上安装Megento 2,并通过安装过程发现Intl扩展安装错误
我在php.ini中做了每件事
我也将所有文件
也下载
还检查了系统变量中的PHP路径,没关系。
但是直到现在为止,国际扩展都无法使用
有什么帮助吗?
Xampp安装程序文件名包含
您可以在此处查看列表并下载Visual C ++ Redistributable
Internationalization extension (further is referred as Intl) is a wrapper for ? ICU library, enabling PHP programmers to perform various locale-aware operations including but not limited to formatting, transliteration, encoding conversion, calendar operations - http://php.net/manual/en/intro.intl.php
对于基于Windows的服务器:
确保php扩展目录中存在php_intl.dll文件
- 对于单独安装的PHP:C: path to php ext
- 对于xampp:C: path to xampp php ext
- (注意:您的驱动器号可能有所不同)
如果文件存在:
- 搜索配置文件(php.ini,通常与php可执行文件位于同一文件夹中)并打开它。您可以通过运行php --ini来轻松找到它
- 确保" extension = php_intl.dll"行存在且未注释
- 重新启动Web服务器(通常是apache)
-
检查是否使用phpinfo()启用了扩展名,或在cmd中运行
php - me
如果文件不存在:
- 通过运行" php -v"命令检查您的php版本
- 从PHP下载页面(TS / NTS,x86 / x64)下载与您相对应的PHP版本。
-
-
要查找php的线程安全性,请运行:
php -i | findstr"Thread" ,xampp随附的版本通常是Thread Safety => enabled 。
-
要查找php的线程安全性,请运行:
- 在该版本的ext文件夹中搜索php_intl.dll文件,然后将其复制到php ext文件夹中
- 对于上面存在文件的情况,请完成步骤。
故障排除
某些Web服务器令人困惑,因为它们不使用PHP可执行文件旁边的php.ini。要找出您实际的php.ini所在的位置,请在phpinfo()中寻找其路径:
1 2 3 4 |
激活扩展后,保存php.ini,重新启动Web服务器并再次检查phpinfo()。现在,新扩展名应具有自己的部分。
如果扩展名未出现在phpinfo()中,则应检查日志以了解问题出处。
如果您从命令行(CLI)使用PHP,则可以在屏幕上直接读取扩展加载错误。
如果将PHP与Web服务器一起使用,则日志的位置和格式取决于您的软件。请阅读您的Web服务器文档以找到日志,因为它与PHP本身无关。
常见问题是DLL的位置,php.ini中的" extension_dir"设置的值以及编译时设置不匹配。
如果问题出在编译时设置不匹配,则可能是您未下载正确的DLL。尝试使用正确的设置再次下载扩展程序。同样,phpinfo()可以提供很大的帮助。
您需要在php.ini文件的[intl]部分进行更改-
更改以下部分
________________________________
[intl]
; intl.default_locale =
;该指令允许您在出现某些错误时产生PHP错误
;发生在intl函数中。该值是产生的错误级别。
;默认值为0,不会产生任何错误。
; intl.error_level = E_WARNING
; intl.use_exceptions = 0
____________________________________
至
________________________________
[intl]
intl.default_locale = en_utf8
;该指令允许您在出现某些错误时产生PHP错误
;发生在intl函数中。该值是产生的错误级别。
;默认值为0,不会产生任何错误。
intl.error_level = E_WARNING
; intl.use_exceptions = 0
____________________________________