PHPでのXML宣言エラー対処方

| | コメント(0) | トラックバック(0)

携帯サイト制作(XHTML)でPHPを使用した場合、「Parse error: syntax error, unexpected T_STRING in ...」というエラーか画面に何も表示されない場合があります。

これはXML宣言
<?xml version="1.0" encoding="Shift_JIS"?>
の「 <? 」が、PHPの「 <?php 」の省略タグと解釈されて引き起こされている場合があります。

いくつか対処法があるのですが、サーバによっては設定できないものもありますので、環境に合わせて設定してください。

対処法1
サーバの「php.ini」の「short_open_tag」を Off にする。
※この方法を利用するとphpの省略タグが使用できなくなる為、省略タグを使用しているphpスクリプトで誤動作を起こす可能性があります。 ※php.iniを設定できるサーバのみ

対処法2
サーバの「.htaccess」に「php_flag short_open_tag Off」を記述する。
※この方法を利用するとphpの省略タグが使用できなくなる為、省略タグを使用しているphpスクリプトで誤動作を起こす可能性があります。
※.htaccessが利用できるサーバのみ

対処法3
PHPファイルのXML宣言部分をPHPの「 echo 」や「 print 」で吐出す。
<?php echo "<?xml version=\"1.0\" encoding=\"Shift_JIS\"?>\n"; ?>

トラックバック(0)

このブログ記事を参照しているブログ一覧: PHPでのXML宣言エラー対処方

このブログ記事に対するトラックバックURL: http://lotusposition.sakura.ne.jp/mt/mt-tb.cgi/9

コメントする

このブログ記事について

このページは、ringoが2008年4月16日 13:15に書いたブログ記事です。

ひとつ前のブログ記事は「メインメニューの「ホーム」を任意の文字に変更」です。

次のブログ記事は「簡体字と繁体字」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Ads