[PHP-users 13897] Re: マルチバイト対応: mb_ereg の未定義エラーについて

M.Yasu php-users@php.gr.jp
Wed, 12 Mar 2003 15:21:30 +0900


> 山下と申します。

山下さん
ご返答ありがとうございます。

安原です。

> # 引用は、一部改行位置を変更しています。。。


>
> ???
> 私もDebian上でPHPを使用しています。
> DebianのバージョンはWoody(Stable)より一つ新しいSarge(Testing)です。
> 現在のPHP4のバージョンはSargeでも4.1.2で、4.2.3はUnstableのハズ
> ですが。

DebianのバージョンはWoodyです。
現在のPHPのバージョンは4.1.2ですが、それをインストールした時マルチバイト対応
がどうなるのか
不透明だったのと、最新の方が問題ないのかと思っていました。

ただ、DEBIAN、APACHE、PHP等を初めて1月しか経っていないので経験が無いのですが
4.1.2で問題なくマルチバイト対応が出来るなら(apt系でのインストールで済むな
ら)
そうした方が、いいかも知れないですね・・・かなりしんどい方法をしていそうで
す。


> aptを使わずに、4.2.3のパッケージファイルをダウンロードしてきて、
>     dpkg -i php4_4.2.3-xxx.deb
> でインストールされたということでしょうか?
> そうすると、libc6とのバージョン依存関係が崩れてしまうと思うのですが。
> また、この場合mbstring系のモジュールを使用可能にしたというのは
> 具体的にどうされたことを指されているのでしょうか?
>
> インストール時に、何をどう行ったか、もう少し具体的に書いて
> 頂けませんか?おそらくDebianではあまり一般的ではない方法で
> インストールされているような気がしますので。。。

すみません、幾分脱線しましたが、PHP4.2.3はunstableです。
dpkgでは依存性に問題をきたすので、dselectでインストールしています。
dselectでパッケージを入れたので、マルチバイト系のモジュールは取り込まれてい
ると思っています。

一応、設定に関しては、php.iniファイルの方に
[mbstring]
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.detect_order = auto
mbstring.substitute_character = none


> ちなみに私の環境
> ---
> OS: Debian Sarge(Testing)
> PHP4: PHP4 4.1.2-6 (Debian Package)
> HTTPD: Apache 1.3.26-1.1 (Debian Package)
> ---
> では、php4のメインパッケージ以外特に追加モジュールっぽい
> パッケージはインストールしていませんが、mbstring関係の関数は
> 普通に使用できています。
>
> 月並みな返答ですが、
>
> phpinfo();
>
> を開いて、
> [Configure Command]に['--enable-mbstring']という記述が含まれて
> いるか、下の方のmbstringテーブルで
> [Multibyte (Japanese) Support]が[enabled]になっているか
> 確認してみて下さい。
>
> では。

を記述しています。

ちなみに、phpinfoも確認しましたが、
「--enable-mbstring」になっており
mbstringテーブル部分も
「Multibyte(Japanese)Support」が「enable」になっています。

やはり、このインストールでは一般的ではないですよね・・。