关于php:intl扩展名:安装php_intl.dll

intl extension: installing php_intl.dll

我试图找到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键+ PAUSE),然后依次单击"高级系统设置"(Vista +)或"高级"(XP),然后单击"环境变量"按钮,然后将适当的目录添加到PATH变量中。系统变量列表。


http://windows.php.net/download/上的软件包均包含php\_intl.dll,位于子目录ext/中。
您要做的就是检查extension_dir是否指向正确的目录,并添加(或取消注释)extension=php\_intl.dll指令。


我安装了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

当我将extension=php_intl.dll添加到php.ini并重新启动apache时,会出现一条警告,提示"请求的操作已失败"

而事件监视器上的此错误:

1
2
3
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文件夹中。那解决了问题。


对于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

然后,只需重新启动沼泽,一切都很好。


我有IIS 7,并在Windows 7上使用Microsoft Web Platform Installer安装了PHP。在IIS中,转到设置主页-> PHP扩展->启用或禁用扩展中的PHP管理器。
默认情况下,国际扩展名是禁用的。

我希望这有帮助


我通过将PHP目录添加到PATH变量解决了此问题。
我只是在Windows环境变量中将;C:\xampp\php附加到PATH变量。


当我遇到此问题时,通过使用以下提到的步骤进行了整理:

编辑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,您一切顺利。


  • 在您的wampserver中的php扩展名下,确保选中了intl
  • 检查您的php / v7.0 / php文件中的extension_dir,确保目录未注释且准确
  • (不知道这是否有所帮助,但我做了全部三件事)在扩展名列表中与上述2相同的文件中,包含与其余格式相同的intl文件(如果未包括在内)。
    祝一切顺利

  • 我无法让intl在Windows 10上使用PHP 7.1.7和PhpStorm运行。根据此处的其他答案,我可以说这是PATH / DLL依赖性问题,但即使在之后我似乎也找不到所有所需的文件(重新)安装Visual C ++可再发行组件。

    最终,我在C:驱动器中搜索vcr * .dll,并在我的C:\Program Files\Mozilla Firefox目录中找到了vcruntime140.dll的副本。因此,除了对php.ini进行这些更改外:

    1
    2
    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)。


    您可以在终端中输入以下命令:sudo apt-get install php-intl


    /在这里挖/

    icu*****.dll文件移动到/ext/似乎也可以解决该问题。

    (当然,如果您指定了扩展目录)