[我正在运行Manjaro linux,并且已经用apache 5.5.15-1和php-composer 1.0.0.alpha8.458-1安装了Apache 2.4.10-1。
我想通过此命令使用作曲家下载项目
composer create-project nette/sandbox TaskManager
但是我在使用ext-iconv时遇到错误
- nette/neon v2.2.1 requires ext-iconv * -> the requested PHP extension iconv is missing from your system.
- nette/nette v2.2.0 requires ext-iconv * -> the requested PHP extension iconv is missing from your system.
但是在我的php.ini中,我启用了iconv扩展名
extension=iconv.so
.
.
[iconv]
iconv.input_encoding = ISO-8859-1
iconv.internal_encoding = ISO-8859-1
iconv.output_encoding = ISO-8859-1
在我的php脚本中,我可以毫无问题地使用iconv函数。
当我运行php -m时,我在其他模块的列表中看到iconv
任何想法哪里可能有问题?
编辑:当我从cli运行php -i时,我得到了:
Configuration File (php.ini) Path => /etc/php
Loaded Configuration File => /etc/php/php.ini
Scan this dir for additional .ini files => /etc/php/conf.d
Additional .ini files parsed => (none)
并且在此配置文件中启用了iconv。
即使我跑步
php -d error_reporting=E_ALL -r 'echo iconv("UTF-8", "ASCII//TRANSLIT", "Žluťoučký kůň\n");'
它正确执行并显示“ Zlutoucky kun”。
所以我发现,该作曲家使用了不同的php配置文件,该文件存储在]中>
/usr/share/php-composer/php.ini
我刚刚添加了以下行
extension=iconv.so
一切正常!
我解决了这个问题并取消了注释
在Centos7的WHM中,它为我工作。
如果使用PHPBrew,请运行此命令以安装iconv
扩展名:
[yum install ea-php72-php-iconv
在centos 7和php 7.2上为我工作