使用最新的PHPMYADMIN報錯解決

 

Fatal error: Can't use function return value in write context in ...\libraries\common.inc.php on line 467
以上兩個錯誤出自PHPMyAdmin目錄中的libraries\common.inc.php,當PHP版本太低時會觸發該錯誤,代碼以下php

if (@extension_loaded('mbstring') && !empty(@ini_get('mbstring.func_overload'))) {
    PMA_fatalError(
        __(
            'You have enabled mbstring.func_overload in your PHP '
            . 'configuration. This option is incompatible with phpMyAdmin '
            . 'and might cause some data to be corrupted!'
        )
    );
}

  

PHP 5.6以前版本中,empty()不能接受函數的返回值爲參數,函數

PHP 5.5以前版本的empty()不接受表達式做爲參數,只接受變量做參數blog

 

,!empty(@ini_get('mbstring.func_overload')) 能夠改爲 $mbf = @ini_get('mbstring.func_overload'); !empty($mbf),回到上述代碼,須要將$mbf = @ini_get('mbstring.func_overload'); 放到if(...)以前。
Parse error: syntax error, unexpected '@' in ...\libraries\common.inc.php on line 467 緣由是在ini_get()前使用了@符號。
新版PHPMyAdmin不支持老版本的PHP,換用PHP 5.5以上版本便可解決以上問題。get

相關文章
相關標籤/搜索