intl extension: installing php_intl.dll
我试图找到
有人有提示吗?
为了使
-
icudt36.dll -
icuin36.dll -
icuio36.dll -
icule36.dll -
iculx36.dll -
icutu36.dll -
icuuc36.dll
默认情况下,它们位于您的PHP目录中,但该目录不一定位于您的
这必须在您的全局路径中,而不仅仅是您用户的路径中。要设置全局路径,请转到系统信息(windows键+ PAUSE),然后依次单击"高级系统设置"(Vista +)或"高级"(XP),然后单击"环境变量"按钮,然后将适当的目录添加到
http://windows.php.net/download/上的软件包均包含
您要做的就是检查extension_dir是否指向正确的目录,并添加(或取消注释)
我安装了XAMPP 1.8.3-0和PHP 5.5.0。
1)编辑php.ini:
从
1 | ;extension=php_intl.dll |
至
1 | extension=php_intl.dll |
注意:修改后,需要保存文件(php.ini)以及重新启动Apache Server。
2)只需复制所有icu * * * * .dll文件:
从
C:\xampp\php
至
C:\xampp\apache\bin
然后国际扩展有效!!!
发生了同样的问题...我通过在驱动器中搜索icu **。dll找到了所需的文件,并找到了上面列出的文件,但在php文件夹中使用46而不是36。我将它们复制粘贴到apache / bin文件中,然后尝试启动apache,它终于启动了。现在,在"服务器检查"页面上,它已从"黄色检查"更改为"绿色确定"。希望这可以帮助。
如果您阅读错误消息,则缺少" icuuc36.dll"。
问题是您的PATH中没有PHP目录,或者您可以将所有" intl"文件从php目录复制到apache bin目录。
他们是 :
icudt36.dll
icuin36.dll
icuio36.dll
icule36.dll
iculx36.dll
icutu36.dll
icuuc36.dll
我有PHP 5.3.1和Apache
当我将
而事件监视器上的此错误:
1 2 3 |
问题是缺少icudt36.dll之类的DLL(被sysinternals ProcMon注意到),我已经下载了PHP 5.3.1 zip版本并将所有DLL提取到PHP文件夹中。那解决了问题。
对于WampServer 2.5(Apache 2.4.9和PHP 5.5.12):
默认情况下,我启用了
为了使其正常工作,我必须复制:
C:\wamp\bin\php\php5.5.12\icu**51.dll
(共8个文件)
至
C:\wamp\bin\apache\apache2.4.9\bin
然后,只需重新启动沼泽,一切都很好。
我有IIS 7,并在Windows 7上使用Microsoft Web Platform Installer安装了PHP。在IIS中,转到设置主页-> PHP扩展->启用或禁用扩展中的PHP管理器。
默认情况下,国际扩展名是禁用的。
我希望这有帮助
我通过将PHP目录添加到PATH变量解决了此问题。
我只是在Windows环境变量中将
当我遇到此问题时,通过使用以下提到的步骤进行了整理:
编辑php.ini:
使
; extension = php_intl.dll
至
扩展名= php_intl.dll
只需复制以下文件中的所有icu * * * * .dll文件(具有dll扩展名的任何icu文件)
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。
现在,国际扩展应该可以工作了:-)
如果您有msvcp110.dll丢失的文件错误。您必须下载正确的.dll或直接转到http://www.microsoft.com/es-es/download/confirmation.aspx?id=30679并安装vcredist_x64.exe和vcredist_x86.exe,它对我有用。
该软件包已经包含在PHP 7.2及更高版本的扩展中,您只需要在php.ini中取消注释以下行即可
1 | extension=intl |
在我的xampp控制面板中,单击"配置"以打开php.ini。
去掉 ;在
;extension=php_intl.dll
然后重新启动apache。
有一种更好的方法。
我在ldap,intl,curl php扩展中遇到了同样的问题。我已经通过以下方式解决了这些问题:
首先,您需要通过删除以下各行前面的分号(;)来检查php.ini文件中是否已启用这些扩展名:
1 2 3 | ;extension=php_intl.dll ;extension=php_ldap.dll ;extension=php_curl.dll |
现在,您可以从httpd.conf(Apache配置文件)文件中直接加载那些必需的dll文件(即libeay32,libssh2,ssleay32,icu **。dll)。您无需执行任何其他操作,例如将它们复制到apache的bin目录或php的ext目录。只需将它们直接添加到您的apache的httpd.conf文件中即可。
请注意,以下示例适用于PHP 5.5.x版本。
1 2 3 4 5 6 7 8 9 10 11 12 | 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" |
而已。现在,重新启动apache或wamp,您一切顺利。
祝一切顺利
我无法让intl在Windows 10上使用PHP 7.1.7和PhpStorm运行。根据此处的其他答案,我可以说这是PATH / DLL依赖性问题,但即使在之后我似乎也找不到所有所需的文件(重新)安装Visual C ++可再发行组件。
最终,我在C:驱动器中搜索vcr * .dll,并在我的
1 2 | extension_dir ="ext" extension=php_intl.dll |
我还将运行时PATH设置为仅PHP目录(在我的情况下为
在我的情况下,在用户环境中将PHP目录添加到PATH无效。经过一些测试,我发现应该将其添加到系统PATH中(我不知道系统设置窗口这部分的名称是什么,因为我有波兰语Windows)。
您可以在终端中输入以下命令:
/在这里挖/
将
(当然,如果您指定了扩展目录)