開発機で作業をしていて、
「なんか、入力データの中に<a href="URL">を入れたんだけど、ダブルクォートがエスケープされるんだよね」
と言われて、調べていくと、どうやら php.ini の magic_quotes_gpc が On になっていた。これはデフォルト値。
これはデフォルトにしておいて欲しくないなあと思った。
勝手に入力値が書き換えられるのだから、ユーザもプログラマも知らないうちにデータが変化してしまう。困る。
で、php.ini をいじるのが本筋なんだが、影響が出てるのが一部のモジュールだけだったので、たしかシステム設定値をいじる関数があったよなと思い、調べると、ini_set() と言うのがあった。
さっそく、ini_set("magic_quotes_gpc", 0) とするが、まったくダメ。 しかもこの関数の実行結果が false でやんの。
調べてみたところ、magic_quotes_gpc の値は、.htaccess か php.ini でないと変更できないらしい。
.htaccess は、単純に ls しても表示されないので、無用なバグやミスを誘発しそうだから却下。
明日、php.ini で変更することにした。
なんか、PHP って、言語としてはいまいちなんだよね。
ここ何年かずっと使い続けてるんだけど。
PHPたん