2016-02-25 115 views
0

問:作曲家/ laravel如何知道或不知道mbstring已安裝?我需要做什麼才能在mbstring上指向composer/laravel?作曲家/ laravel - mbstring:已安裝,可用但未見laravel

試圖在RHEL服務器上安裝最新版/最佳版。在GUI和CLI中都安裝並啓用了mbstring。

即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 

/usr/bin/php -m 
[PHP Modules] 
... 
mbstring 
mcrypt 
... 

然而,當我這樣做:

$ 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個。

我已經搜索堆棧/網絡和大家解決「安裝」mbstring的問題......這不是我的問題。我知道它的工作原理是使用需要安裝和運行mbstring的代碼。

唯一看起來不對的是,在php.ini中,extension_dir未啓用。

即:

; extension_dir = "./" 

但是能夠打破目前的安裝。

所以我猜測,作曲家/ laravel只是找不到MBSTRING ...

+0

如果你運行PHP的'你會得到什麼 - 我| grep mbstring'? – aynber

+0

使用'composer show -p'來列出所謂的「PlatformRepository」,這是虛擬倉庫Composer用於跟蹤模塊和包括版本的版本,包括PHP本身。那裏的輸出應該表明它是否正確地看到mbstring以及如何。 –

+0

@anyber ... mbstring同時存在於cli和gui ..但是這裏是-i/usr/bin/php -i | grep mbstring 012//etc/php.d/mbstring.ini, Zend Multibyte Support = >由mbstring提供 mbstring mbstring擴展使用「流式漢字代碼過濾器和轉換器」,它是在GNU寬鬆公共許可證2.1版下發布的。 –

回答

0
  1. 找到你的php.ini
  2. 確保指令extension_dir = C:\路徑\爲\服務器\ PHP \ ext是 設置和調整路徑(設置你的PHP擴展目錄)
  3. 確保指令擴展=中php_mbstring.dll設置 (取消註釋)
+0

OP使用的是RHEL,而不是Windows。 – aynber

+0

請注意接近底部,我說使extension_dir打破系統 –