我正在尝试查找php_intl.dll
并安装它。
有人有提示吗?
Answers:
位于http://windows.php.net/download/的软件包均包含php\_intl.dll
位于subdir中的ext/
。
您所要做的就是检查extension_dir是否指向正确的目录并添加(或取消注释)该extension=php\_intl.dll
指令。
为了使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
“系统变量”列表中的变量中。
我安装了XAMPP 1.8.3-0和PHP 5.5.0。
1)编辑php.ini:
从
;extension=php_intl.dll
至
extension=php_intl.dll
注意:修改后,需要保存文件(php.ini)以及重新启动Apache Server。
2)只需复制所有icu * * * * .dll文件:
从
C:\ xampp \ php
至
C:\ xampp \ apache \ bin
然后国际扩展有效!!!
msvcp*
DLL。您提到的文件msvcp110.dll
应包含在VC ++ 2012 Redist程序包中。
遇到了同样的问题...我通过在驱动器中搜索icu * * .dll找到了所需的文件,并找到了上面列出的文件,但在php文件夹中使用46而不是36。我将它们复制粘贴到apache / bin文件中,并尝试启动apache并最终启动。现在,在“服务器检查”页面上,它已从“黄色检查”更改为“绿色确定”。希望这可以帮助。
对于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 \ icu ** 51.dll
(共8个文件)
至
C:\ wamp \ bin \ apache \ apache2.4.9 \ bin
然后,只需重新启动沼泽,一切都很好。
我有PHP 5.3.1和Apache
当我将extension=php_intl.dll
php.ini添加 到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
问题是缺少icudt36.dll之类的DLL(被sysinternals ProcMon注意到),我已经下载了PHP 5.3.1 zip版本并将所有DLL都提取到了PHP文件夹中。那解决了问题。
我通过将PHP目录添加到PATH变量解决了此问题。我只是在Windows环境变量中附加;C:\xampp\php
了Path
变量。
我有IIS 7,并在Windows 7上使用Microsoft Web Platform Installer安装了PHP。在IIS中,转到设置主页-> PHP扩展->启用或禁用扩展中的PHP管理器。默认情况下,国际扩展名是禁用的。
我希望这有帮助
如果您有msvcp110.dll丢失的文件错误。您必须下载正确的.dll或直接转到http://www.microsoft.com/es-es/download/confirmation.aspx?id=30679并安装vcredist_x64.exe和vcredist_x86.exe,它对我有用。
当我遇到此问题时,使用以下提到的步骤进行了整理:
编辑php.ini:
使
; extension = php_intl.dll至
扩展名= php_intl.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。
现在,国际扩展名应该可以工作了:-)
您可以在终端中键入以下命令: sudo apt-get install php-intl
该软件包已经包含在PHP 7.2及更高版本的扩展中,您只需要在php.ini中取消注释以下行即可
extension=intl
这样做有更好的方法。
我在ldap,intl,curl php扩展中遇到了同样的问题。我已经通过以下方式解决了这些问题:
首先,您需要通过删除以下各行前面的分号(;)来检查php.ini文件中是否已启用这些扩展名:
;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版本。
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,并在C:\Program Files\Mozilla Firefox
目录中找到vcruntime140.dll的副本。因此,除了对php.ini进行这些更改外:
extension_dir = "ext"
extension=php_intl.dll
我还将运行时PATH设置为仅PHP目录(在我的情况下为C:\Program Files\PHP\7.1.7
)和Firefox目录(在上面),并且最终可以正常工作!我知道它不仅需要vcruntime140.dll,而且其他必需的DLL也必须位于FF目录中(有几十个,但我没有费心找出哪些是必需的)。
在我的情况下,在用户环境中将PHP目录添加到PATH无效。经过一些测试,我发现应该将其添加到系统PATH中(我不知道系统设置窗口这部分的名称是什么,因为我有波兰语Windows)。