Parse error: syntax error, unexpected '@' in ...\libraries\common.inc.php on line 467
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版本过低时会触发该错误,代码如下。
- 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 Fatal error: Can't use function return value in write context in ... on line ...:在PHP 5.6之前版本中,empty()不能接受函数的返回值为参数,PHP 5.5之前版本的empty()不接受表达式作为参数,只接受变量作参数,!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以上版本即可解决以上问题。 |
|