Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php composer/laravel--mbstring:已安装,可用,但laravel看不到_Php_Laravel 5_Composer Php - Fatal编程技术网

Php composer/laravel--mbstring:已安装,可用,但laravel看不到

Php composer/laravel--mbstring:已安装,可用,但laravel看不到,php,laravel-5,composer-php,Php,Laravel 5,Composer Php,问题:composer/laravel如何知道或不知道安装了mbstring?我需要做什么才能将composer/laravel指向mbstring 正在尝试将最新/最大版本安装到RHEL服务器上。mbstring已在GUI和CLI中安装并启用 ie cli: /usr/bin/php -v: PHP 5.5.24 (cli) (built: Apr 18 2015 03:23:49) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.5.

问题:composer/laravel如何知道或不知道安装了mbstring?我需要做什么才能将composer/laravel指向mbstring

正在尝试将最新/最大版本安装到RHEL服务器上。mbstring已在GUI和CLI中安装并启用

ie cli:

/usr/bin/php -v:
PHP 5.5.24 (cli) (built: Apr 18 2015 03:23:49)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies

但当我这样做的时候:

$ composer create-project --prefer-dist laravel/laravel dev-laravel
Installing laravel/laravel (v5.2.15)
  - Installing laravel/laravel (v5.2.15)
    Loading from cache
我明白了:

Problem 1
    - laravel/framework v5.2.9 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
嗯,我有20个

我搜索了stack/web,每个人都解决了“安装”mbstring的问题。。。那不是我的问题。我知道它是基于使用需要安装和运行mbstring的代码而工作的

唯一似乎错误的是,在php.ini中,没有启用扩展_dir

即:

但启用该选项会破坏当前的安装

所以我猜作曲家/拉威尔就是找不到mbstring

  • 查找您的php.ini
  • 确保指令扩展名\u dir=C:\path\to\server\php\ext为 设置并调整路径(设置PHP扩展目录)
  • 确保设置了指令extension=php_mbstring.dll (未注释)

  • OP使用的是RHEL,而不是Windows。请注意,在底部附近,我说过启用扩展目录会破坏系统。如果运行
    php-I | grep mbstring
    ,您会得到什么?使用
    composer show-p
    列出所谓的“平台存储库”,这是假存储库编写器用来跟踪模块和包含的版本,包括PHP本身。那里的输出应该指示它是否正确地看到mbstring以及如何看到它。@anyber。。。mbstring同时存在于cli和gui中。。但是这里是-i/usr/bin/php-i|grep mbstring/etc/php.d/mbstring.ini,由mbstring-mbstring扩展提供的Zend多字节支持=>使用了“可流化汉字代码过滤器和转换器”,它是在GNU Lesser通用公共许可证版本2.1下发布的。@Niels Keurentjes。。。composer show-p不显示ext mbstring。。。所以问题是“我如何告诉composer”mbstring在哪里?当您在命令行上输入
    php-r“print\r(get\u loaded\u extensions());”
    时,它是否在列表中?另外,由于您使用所有命令显式地输入
    /usr/bin/php
    哪个php
    也指向那里?
    composer show-p
    是否也列出了版本
    5.5.24
    中的PHP?
    Problem 1
        - laravel/framework v5.2.9 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    
     ; extension_dir = "./"