国际 PHP 扩展不适用于 xampp 服务器
intl PHP extension is not working for xampp server
我正在尝试安装 CakePHP 3-0-0
版本并且我已经从 here 下载了源代码。但是它显示启用intl extension
的错误。因为我已经在 php.ini
文件中将 ;extension=php_intl.dll
更改为 extension=php_intl.dll
(删除分号)并重新启动 xampp 2-3
次,但它仍然显示相同的错误.
下面是错误:
Fatal error: You must enable the intl extension to use CakePHP. in D:\xampp\htdocs\cakephp-3-0-0\config\bootstrap.php on line 38
所以,谁能告诉我这里的问题是什么?我应该怎么做才能解决这个问题?
激活 php.ini 文件中的 php_intl.dll
后,您还需要将 php_intl.dll
使用的 dll 文件从 PHP 文件夹复制到 Apache/bin文件夹。
我不是 XAMPP 用户,所以我不确定实际的文件夹名称
将xampp/php/icu*.dll复制到xamp\apache\bin
另请记住,您必须编辑 \xampp\apache\bin
文件夹中的 php.ini 文件,而不是 \xampp\php
文件夹中的文件。
\xampp\php
文件夹中的那个仅供 PHP CLI(命令行界面)使用
以防万一你正在使用 OSX
从 http://www.phpzce.com/blog/view/15/installing-intl-package-on-your-mac-with-xampp
开始的步骤
检查设置了哪个 php 路径,即
root$: php
如果您在 mac 上使用 xampp,它应该是
/Applications/XAMPP/xamppfiles/bin/php
但如果它
/usr/bin/php
你需要改变你的 OSx php
root$: PATH="/Applications/XAMPP/xamppfiles/bin:${PATH}"
安装icu4c
root$: brew 安装 icu4c
通过 PECL 安装 Intl
root$: sudo pecl 更新通道
root$: sudo pecl install intl
您可以检查Intl是否安装成功
root$: php -m | grep intl #should return 'intl'
完成
在我的案例中,问题是重新启动 Apache 进程。通过单击“停止”和“启动”在 XAMPP 控制面板中重新启动是不够的。我不得不 运行 任务管理器并终止 httpd.exe 进程。然后再次运行 XAMPP。那解决问题。
对我来说(不使用任何 xampp,仅 Apache 2.4 和 php 5.5。安装在 Windows 7 上):
取消注释 php.ini 中的国际扩展后,它没有激活,因为我只重新启动了 Apache 服务器!
最好从 phpinfo() 页面观察(尝试查找 intl)。
所以我认为当我停止并启动 Apache 服务器时问题就解决了。 (可能与 中的问题相同)
在尝试解决方案时,我移动了 php 文件夹并将该文件夹更改为 Apache conf 文件,但忘记将环境变量路径更改为 php,所以过了一会儿我发现了这个并让它工作.
Control Panel->System->Advanced->Environmental variables->Path->Check
php folder is there Thanks to Gregory Karpinsky
请检查扩展程序是否仍未加载!
无需从 php->apache\bin 复制任何文件。这可能是因为我没有使用 xampp 但实际上有必要停止和启动 Apache 服务以使其重新加载 php 扩展并使路径环境变量正确。
如果您配置了基本设置,请尝试重新启动xampp...它对我有效。
我正在尝试安装 CakePHP 3-0-0
版本并且我已经从 here 下载了源代码。但是它显示启用intl extension
的错误。因为我已经在 php.ini
文件中将 ;extension=php_intl.dll
更改为 extension=php_intl.dll
(删除分号)并重新启动 xampp 2-3
次,但它仍然显示相同的错误.
下面是错误:
Fatal error: You must enable the intl extension to use CakePHP. in D:\xampp\htdocs\cakephp-3-0-0\config\bootstrap.php on line 38
所以,谁能告诉我这里的问题是什么?我应该怎么做才能解决这个问题?
激活 php.ini 文件中的 php_intl.dll
后,您还需要将 php_intl.dll
使用的 dll 文件从 PHP 文件夹复制到 Apache/bin文件夹。
我不是 XAMPP 用户,所以我不确定实际的文件夹名称
将xampp/php/icu*.dll复制到xamp\apache\bin
另请记住,您必须编辑 \xampp\apache\bin
文件夹中的 php.ini 文件,而不是 \xampp\php
文件夹中的文件。
\xampp\php
文件夹中的那个仅供 PHP CLI(命令行界面)使用
以防万一你正在使用 OSX
从 http://www.phpzce.com/blog/view/15/installing-intl-package-on-your-mac-with-xampp
开始的步骤检查设置了哪个 php 路径,即
root$: php
如果您在 mac 上使用 xampp,它应该是
/Applications/XAMPP/xamppfiles/bin/php
但如果它
/usr/bin/php
你需要改变你的 OSx php
root$: PATH="/Applications/XAMPP/xamppfiles/bin:${PATH}"
安装icu4c
root$: brew 安装 icu4c
通过 PECL 安装 Intl
root$: sudo pecl 更新通道 root$: sudo pecl install intl
您可以检查Intl是否安装成功
root$: php -m | grep intl #should return 'intl'
完成
在我的案例中,问题是重新启动 Apache 进程。通过单击“停止”和“启动”在 XAMPP 控制面板中重新启动是不够的。我不得不 运行 任务管理器并终止 httpd.exe 进程。然后再次运行 XAMPP。那解决问题。
对我来说(不使用任何 xampp,仅 Apache 2.4 和 php 5.5。安装在 Windows 7 上):
取消注释 php.ini 中的国际扩展后,它没有激活,因为我只重新启动了 Apache 服务器!
最好从 phpinfo() 页面观察(尝试查找 intl)。
所以我认为当我停止并启动 Apache 服务器时问题就解决了。 (可能与
在尝试解决方案时,我移动了 php 文件夹并将该文件夹更改为 Apache conf 文件,但忘记将环境变量路径更改为 php,所以过了一会儿我发现了这个并让它工作.
Control Panel->System->Advanced->Environmental variables->Path->Check php folder is there Thanks to Gregory Karpinsky
请检查扩展程序是否仍未加载!
无需从 php->apache\bin 复制任何文件。这可能是因为我没有使用 xampp 但实际上有必要停止和启动 Apache 服务以使其重新加载 php 扩展并使路径环境变量正确。
如果您配置了基本设置,请尝试重新启动xampp...它对我有效。