php - 如何在 macOS Mojave 上启用 PHP Intl 扩展?
问题描述
我正在尝试在 macOS Mojave 上安装 Magento (2.3.0)。Magento 节目PHP Extension intl.
不见了。
我尝试了以下方法来解决:
- 使用复制 php.ini
cp /etc/php.ini.default php.ini
- 删除了“;” 前
extension=php_intl.dll
- 重启阿帕奇
sudo apachectl restart
但上述并没有解决。
在检查php -v
时,我看到以下错误:
PHP Warning: PHP Startup: Unable to load dynamic library
'/usr/lib/php/extensions/no-debug-non-zts-20160303/php_intl.dll' -
dlopen(/usr/lib/php/extensions/no-debug-non-zts-20160303/php_intl.dll,
0x0009): dlopen(): file not found: /usr/lib/php/extensions/no-debug-
non-zts-20160303/php_intl.dll in Unknown on line 0
PHP 7.1.19 (cli) (built: Aug 17 2018 20:10:18) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
/usr/lib/php/extensions/no-debug-non-zts-20160303
即下只有2个文件opache.so
和xdebug.so
如何在我的 macOS Mojave 上安装或启用“PHP Extension intl”?
解决方案
这是一个对我有用的解决方案:
- 查找所有已安装的 PHP 版本
brew list | grep php
- 删除所有版本的 PHP
brew remove --ignore-dependencies --force php70 php71 php72
(根据您在上面看到的内容) - 安装 PHP
brew install php72
(我选择了 7.2,7.3 还没有几个供应商支持) - 运行命令
which php
应该会显示安装 PHP 的路径。复制路径。 - 更新您的 bash_profile
vi ~/.bash_profile
并将此行添加到文件中:export PATH=/usr/local/php5/bin:$PATH
- 保存并运行它
source ~/.bash_profile
- 检查是否使用
php -m | grep intl
. 如果安装顺利,我们将看到intl列出。如果不是,则未安装扩展。
我认为从 PHP 7(不确定版本)开始,扩展默认是可用的,我们不需要在php.ini文件中显式启用它们。
推荐阅读
- react-native - 尽管全球安装了世博会,但无法在此项目中找到世博会
- flutter - 热重载时的 Riverpod 状态更新
- database - 查询和链接表
- python-3.x - 无法在 Anaconda Python 上安装 web3 模块(尝试了 Wheeler 文件和原始文件下载)
- python - 如何在 Pandas 中使用合并或 VLOOKUP 功能合并两个数据框
- sorting - 我需要在附加时对附加的东西进行排序
- dart - 用于避免 dart csv 日志编写器的三重代码的设计模式(类属性、csv 标题、行值)
- javascript - 我正在尝试在 javascript 中获取价值,以 JSON 格式以 PHP 形式返回它
- javafx - 如何在 JavaFX 的组合框中用文本替换向下箭头
- python - 希望在类方法中编写一个方法来输出我的卡片 tkinter