40

CentOS 5.3 VMware の「ボックス」に indefero をインストールしようとしましたが、問題が発生しました。インストールのかなり早い段階で、次のように絞り込むことができたというエラーが表示されます。

[root@code /var/www/html]# cat x.php
 <?php
     mb_internal_encoding("UTF-8");
 ?>
[root@code /var/www/html]# php x.php
PHP Fatal error:  Call to undefined function mb_internal_encoding() in 
/var/www/html/x.php on line 2

このスクリプトを http 経由で Apache 経由で呼び出すと、同じエラーが発生します。PHPマニュアルによると、mb_internal_encoding関数はPHP 5に組み込まれているはずです。

CentOS 5.3 i386 (Linux コード 2.6.18-53.1.21.el5 #1 SMP Tue May 20 09:34:18 EDT 2008 i686 i686 i386 GNU/Linux) があり、PHP 5.2.9 をインストールしました。

[root@code /var/www/html]# php -v
PHP 5.2.9 (cli) (built: Jul  8 2009 06:03:36)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies

再確認しました:selinuxは無効になっています(今のところ)。

これを修正するにはどうすればよいですか?

4

7 に答える 7

73

mbstring は「デフォルトではない」拡張機能であり、デフォルトでは有効になっていません。マニュアルのこのページを参照してください。

インストール

mbstring はデフォルト以外の拡張子です。これは、デフォルトでは有効になっていないことを意味します。configure オプションを使用してモジュールを明示的に有効にする必要があります。詳細については、インストールのセクションを参照してください

したがって、その拡張機能を有効にして、php.ini ファイルを変更する必要がある場合があります (変更が反映されるように、Apache を再起動します)。


私はCentOSを使用していませんが、最初に次のようなものを使用して拡張機能をインストールする必要がある場合があります(たとえば、このページを参照してください。解決策があるようです) :

yum install php-mbstring

(パッケージ名は少し異なる場合があります。そのため、yum 検索を使用して取得してください :-) )

于 2009-08-01T10:03:23.803 に答える
23

Debian/Ubuntu の場合:

sudo apt-get install php7.0-mbstring

于 2016-10-27T05:54:44.077 に答える
4

php-mbstringubuntu にパッケージ をインストールする際に誰かが問題を抱えている場合は、次の手順を実行してください。 sudo apt-get install libapache2-mod-php5

于 2015-10-06T06:51:27.197 に答える
0

OpenSUse (zypper パッケージ マネージャー) の場合:

zypper install php5-mbstring

と:

zyper install php7-mbstring

一方、YaST ソフトウェア マネージャーを使用してそれらを検索できます。

Apache http サーバーを再起動する必要があることに注意してください。

systemctl restart apache2.service
于 2017-02-16T21:34:29.887 に答える