php 带有 wamp 的国际扩展 php_intl.dll
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/16372888/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
intl extension php_intl.dll with wamp
提问by Ankur Saxena
I want to use Moodle, but I get an error during the installation process:
我想使用Moodle,但在安装过程中出现错误:
php_extension->intl->should be installed and enabled for best results.
Intl extension is used to improve internationalization support, such as locale aware sorting.
应安装并启用 php_extension->intl-> 以获得最佳效果。
Intl 扩展用于改进国际化支持,例如区域设置感知排序。
When I click on the link, I get the error message above: http://docs.moodle.org/24/en/admin/environment/php_extension/intl
当我点击链接时,我收到上面的错误消息: http://docs.moodle.org/24/en/admin/environment/php_extension/intl
I followed that link, but I still get the same error. If anyone has any ideas, please help me out.
我跟着那个链接,但我仍然得到同样的错误。如果有人有任何想法,请帮助我。
回答by Athlan
I had the same problem a few days ago.
几天前我遇到了同样的问题。
You have to copy all the files (all files starts with icu*
):
您必须复制所有文件(所有文件都以 开头icu*
):
icudt.dll
icudt46.dll
icuin.dll
icuin46.dll
icuio.dll
icuio46.dll
icule.dll
icule46.dll
iculx.dll
iculx46.dll
icutest.dll
icutest46.dll
icutu.dll
icutu46.dll
icuuc.dll
icuuc46.dll
From:
从:
<wamp_installation_path>/bin/php/php5.4.3/
To:
到:
<wamp_installation_path>/bin/apache/apache2.2.22/bin/
And you also need to enable intl in php.ini file (uncomment this line):
并且您还需要在 php.ini 文件中启用 intl(取消注释此行):
;extension=php_intl.dll
And restart the server. It should works fine.
并重启服务器。它应该可以正常工作。
Of course, you need to replace the folder names with your own.
当然,您需要将文件夹名称替换为您自己的名称。
回答by rightstuff
Recently, newer versions of PHP 5.5 releases have php_intl.dllalso linking (loading) MSVCP110.dll, in addition to the more common MSVCR110.dll (both are C/C++ runtime DLLs that provide common functions).
最近,PHP 5.5发布的新版本有php_intl.dll还连接(装载)MSVCP110.dll,除了比较常见的MSVCR110.dll(都是C / C ++运行时的DLL提供常用功能)。
Before, you could just include file MSVCR110.dll somewhere in a directory of the PATH instead of installing the full set of VC++ 2012 Redistributable DLLs, and Apache + PHP + PHP extensions like php_intl.dll would all load.
以前,您可以只将文件 MSVCR110.dll 包含在 PATH 目录中的某个位置,而不是安装全套 VC++ 2012 Redistributable DLL,并且 Apache + PHP + PHP 扩展(如 php_intl.dll)都会加载。
If PHP is giving you this error:
如果 PHP 给你这个错误:
PHP Startup: Unable to load dynamic library C:/wamp/php/ext/php_intl.dll – The specified module could not be found.
PHP 启动:无法加载动态库 C:/wamp/php/ext/php_intl.dll –找不到指定的模块。
There are two things you have to do:
您必须做两件事:
Instead of copying the various icu*.dll files from PHP's folder into Apache's bin folder, just include the PHP directory into the system's PATH variable.
Install the full Microsoft VC++ 2012 Runtime Redistributable package. Make sure to get the 32 bit version for 32 bit PHP builds.
无需将各种 icu*.dll 文件从 PHP 文件夹复制到 Apache 的 bin 文件夹中,只需将 PHP 目录包含到系统的 PATH 变量中即可。
安装完整的 Microsoft VC++ 2012 Runtime Redistributable 包。确保为 32 位 PHP 构建获得 32 位版本。
See more about this issue here - Unable to load or find PHP extension php_intl.dll
在此处查看有关此问题的更多信息 -无法加载或找到 PHP 扩展 php_intl.dll
回答by Lalit Singh Rana
I tried many options (including the ones suggested by Moodle) to no avail; the VC++ redistributable helped me.
我尝试了很多选项(包括 Moodle 建议的选项)都无济于事;VC++ 可再发行版帮助了我。
Please note that you may have to install x86 version even when you may be having a 64 bit OS.
请注意,即使您使用的是 64 位操作系统,您也可能必须安装 x86 版本。
https://www.microsoft.com/en-us/download/details.aspx?id=48145
https://www.microsoft.com/en-us/download/details.aspx?id=48145
回答by Giannis Livanis
Copy your icu*
files to <wamp_installation_path>/bin/apache/apachexxxxx/bin/
将您的icu*
文件复制到<wamp_installation_path>/bin/apache/apachexxxxx/bin/
This worked for me.
这对我有用。