[PHP-users 14626]Re: magic_quotes_gpcの設定

Seiji Masugata s.masugata @ digicom.dnp.co.jp
2003年 4月 14日 (月) 12:11:44 JST


こんにちわ、桝形です。

> magic_quotes_gpc = Off
> magic_quotes_runtime = Off
> INSERT時は、addslashes()を用いてのエスケープ処理
> SELECT時は、そのまま(stripslashes()を使用せず)
> がシンプルな気がしますが、みなさんはどのように対処されて
> いますでしょうか?
> なお、PHP最新版(4.3.1)のデフォルトは下記のようです。

それは、php.ini-distの方ですよね?

[masugata @ hogehuga php-4.3.2RC1]$ more php.ini-dist | grep magic_quotes
magic_quotes_gpc = On
magic_quotes_runtime = Off
magic_quotes_sybase = Off

[masugata @ hogehuga php-4.3.2RC1]$ more php.ini-recommended | grep magic_quotes
; - magic_quotes_gpc = Off         [Performance]
magic_quotes_gpc = Off
magic_quotes_runtime = Off
magic_quotes_sybase = Off

と、more php.ini-recommendedでは、全てOffになっています。

php.ini-dist          ... 互換
php.ini-recommended   ... 推奨

という認識です、間違っていたら指摘願います。

自分は、

magic_quotes_gpc = Off
magic_quotes_runtime = Off

で、必要な部分だけエスケープ処理をしています。
理由は下記の通りで、

> 又、magic_quotes_gpcをOnにした場合、
> 文字化け問題など注意点がありましたらご教授ください。

基本的にmagic_quotes_gpcは、マルチバイトを考慮せずに付加をするので
ユーザーから入力されたSJIS文字が"表"( 0x955c )等だった場合、PHPが
受け取るSJIS文字は"表\"( 0x955c5c )となります。

この辺りを考慮すれば、magic_quotes_gpcがOnでもよいのでは。。。と
思います。

magic_quotes_gpcがOnだと、クエリ以外の部分にも気にかけなければ
なりません。

--
Seiji Masugata <s.masugata @ digicom.dnp.co.jp>



PHP-users メーリングリストの案内