2009/12/01

PHP 5.3 の short_open_tag

やー、PHPに戻ってきたよ。いろんなところでdisられまくりのPHPですけど俺はお前の味方だぜ?

えっとですね、fedora 11 → 12 にアップグレードしました。そして yum upgrade したところ、PHPが5.3になりました。
そしたら急にPHPが動かない。HTMLに埋め込まれたPHPソースが丸見え・・・は、恥ずかしい。
俺はお前の味方なのにどうしてそういう、、、反抗期かい?

PHPとして認識されてないのは明らかなので、php.iniとhttpd.confあたりをチェックしてみよう。
似たような環境から php.ini を php.ini.sample なんて名前にして持ってきておもむろにdiffなんぞをやってみる。
diff /etc/php.ini.sample /etc/php.ini
< short_open_tag = On
---
> short_open_tag = Off

ああ、これか。
コア php.ini ディレクティブに関する説明 - Manual
PHP タグの短縮型 (<? ?>) を使用 可能にするかどうかを設定します。PHPをXMLと組み合わせて用いる 場合は、<?xml ?>をファイル中で用 いるためにこのオプションをオフにする必要があります。オンにし た場合にPHPでXMLを出力するには、例えば、次のようにします。 <?php echo '<?xml version="1.0"?>'; ?> これをオフにした場合、長い方の形式のタグ (<?php ?>)を使用する必要があります。


あれれ、いつからなんだろ。でもPHPはこういうものだからみんなも気にしないよね。
そんじゃーね。

Google Analytics