• ベストアンサー

phpと<?xml version="1.0" encoding="utf-8"?>

phpファイルの頭に<?xml version="1.0" encoding="utf-8"?>を入れると Parse error: syntax error, unexpected T_STRING in ・・・ というエラーが出ます。 なぜでしょう?

  • eak
  • お礼率56% (13/23)
  • PHP
  • 回答数1
  • ありがとう数16

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

PHPは、 <?php ......?> でも <? ......?> でもPHPのスクリプトと見なされます。よって、 <?xml version="1.0" encoding="utf-8"?> の中の xml version.....はスクリプトとして認識されています。 こういう場合は、 <?php echo '<?xml version="1.0" encoding="utf-8"?>'; ?> とすれば問題無くなります。

eak
質問者

お礼

ありがとうございます!!!!!!!!!! 行けました。 ほんとに助かりました!

関連するQ&A

  • MTをphp化したあとにRSSリーダーでエラーが出る。

    タイトルそのままなのですが、 MTをphp化し、ソースの1行目も <?php echo '<?xml version="1.0" encoding="UTF-8" ?>'; ?> に書き換え、通常のブラウザで見る分にはきちんと表示されているのですが、 RSSリーダーで読み込むと Parse error: parse error, unexpected T_STRING in …php on line 1 のエラーになってしまいます。 解決策をご存知の方がいらっしゃいましたらご教授ください。 よろしくお願いします。

  • htaccessの記述方法??

    携帯サイトでドコモ対応で <?xml version="1.0" encoding="shift_jis"?> をhtml内で記述しています。 しかし、htmlファイル内でphpを動作させたいのでhtaccessに AddType application/x-httpd-php .html を記述している為 Parse error: syntax error, unexpected T_STRING in ~~~~ エラーが出てしまいます。 ドコモ対応もしたいので<?xml version="1.0" encoding="shift_jis"?>は必須で htmlファイル内でphpを動作もさせたいです。 解決方法はございますでしょうか?

    • ベストアンサー
    • PHP
  • PHPを拡張子 .html で動作させたいときは・・

    PHPを拡張子 .html で動作させたくて .htaccess に AddType application/x-httpd-php .htm .html と 記述して使用しているのですが、そのページのリンク先に <?xml version="1.0" encoding="Shift_JIS"?>が記述してあると リンク先に移動したときに Parse error: syntax error, unexpected T_STRING in /home/sites/lolipop.jp/users/*****/web/uonome/index.html on line 1 と、エラーが表示されてページが表示されません。 <?の部分がエラーになる要因みたいなのですが、 この状態を回避するには<?xml version="1.0" encoding="Shift_JIS"?>を 削除するしかないでしょうか? できれば<?xml version="1.0" encoding="Shift_JIS"?>を 削除しない方法があればと思い、質問させていただきました。

    • ベストアンサー
    • PHP
  • encoding="UTF-16" ってUTF-16で書かれても。

     以前からずっと疑問だったのですが。。。  XML宣言の中に、エンコーディングを記述するところがありますが、その宣言文字列自体をそのエンコーディングで記述するというのはおかしくないでしょうか。  たとえば、UTF-16だったら、 encoding="UTF-16" と書くわけですが、これ自体がUTF-16で書かれているわけですよね? UTF-16で書かれているとわかっていたら宣言する必要はないし、宣言読まないとわからないんだったら、この宣言自体も読めないはずです。  今実際に、UTF-16で書かれていて、エンコーディング宣言もしているXML文書をあるソフトで読もうとしているのですが、1バイト目を読んだところで「Unexpected character. position = 0 」と出力されてエラーになります。  強制的にUTF-16で読ませる昨日もあるので、そうすればエラーは起こりませんが、それじゃエンコーディング宣言の存在自体に意味がないのでは? これは、最初の時点で読めないこと自体がこのソフトの不具合なのでしょうか?  これってどういうことなんでしょう。解決できるんでしょうか。

    • ベストアンサー
    • XML
  • Parse error: syntax error, unexpected T_STRING in・・・118と出るのですが

    Parse error: syntax error, unexpected T_STRING in 。。。 on line 118 とでるのですが対処はどうすればよろしいでしょうか?

    • ベストアンサー
    • PHP
  • smartyについて教えてください。

    smartyについて教えてください。 エラーメッセージ Parse error: syntax error, unexpected T_STRING in C:\xampp\htdocs\smarty\hello\index.php on line 8 の意味を教えていただけませんでしょうか? よろしくお願いいたします。

  • PHPですが、エラーがでます。下記の問題があるよう

    なんですが、どこがいけないのでしょうか? $sql = "insert into menber(name,passward) values($_POST["name"]."','".$_POST["passward"].)";//SQL文の作成 ?> エラーはParse error: syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in です。よろしくお願いいたします。

  • PHPで出てくる use とは何ですか?

    phpMyAdmin5 をダウンロードしました。 htdocsに解凍し、ブラウザのアドレス欄に HTPP://localhost/phpMyAdmin5/ibndex.php と入力しましたが、次のようなエラーメッセージが出てきました。 Parse error: syntax error, unexpected T_STRING, expecting T_CONSTANT_ENCAPSED_STRING or '(' in C:\xampp\htdocs\phpMyAdmin5\index.php on line 10 そこでindex.phpの10行を見ると use PhpMyAdmin\Controllers\HomeController; となっています。 このuse というのはいったい何なのでしょうか。ネットで調べてもこれに関する情報は何も見つかりませんでした。 詳しい方、どうか教えてください。 また上に書いたようなやり方でphpMyAdminを始められるのでしょうか?

    • ベストアンサー
    • PHP
  • 新着ブロガーについて

    ホームページ作成で 複数のブログの新着情報を載せようと思い レッツPHPの新着ブロガーを利用することにしましたが、うまく出来ません。PHP等の知識があまりないので教えていただけたらと思います。 レッツPHPの新着ブロガーです。 http://php.s3.to/net/ 指示通りセットしたのですが、いざホームページを開くと下記のエラーになります。 新着ブログ Parse error: syntax error, unexpected T_STRING in /home/users/0/lolipop.jp-2194d903d0dc9d08/web/m/XML/PEAR.php on line 1 この部分のラインは下記です package2.xml0000644000076500000240000013062211605156614012241 0ustar helgistaff<?xml version="1.0" encoding="UTF-8"?> ドリームウィーバーで シンタックスエラーがあります。このエラーを修正しないとコードヒントが機能しない場合があります。 というエラーです。 いろいろネットで検索したのですがどこを直せばよいのかわかりません。 わかる方お力添え宜しくお願い致します。

    • 締切済み
    • PHP
  • encoding="unicode"について

    ものすごい初歩的な質問で申し訳ないのですが、回答をお願いします。 <?xml version="1.0" encoding="Unicode" ?> と宣言したうえで、 UTF-16でエンコードして保存します(utf16_1.xml)。 このutf16.xmlをIE7で表示しようとすると正しく表示されますが、 UTF-8でエンコードして保存(utf8_1.xml)したものを IE7で表示しようとすると解析エラーとなります。 続いて<?xml version="1.0" encoding="UTF-16" ?>と宣言して、 UTF-16でエンコードして保存(utf16_2.xml)したものはIE7で正しく表示され、 <?xml version="1.0" encoding="UTF-8" ?>と宣言して、 UTF-8でエンコードして保存(utf8_2.xml)したものはIE7で正しく表示されます。 (まぁ、これは当たり前ですけど) ここからが本題なのですが、共にUTF-16で保存したとして、 encodingの指定でUnicodeと指定した場合と、UTF-16とした場合では、 表示結果は同じに見えますが、同じ意味となるのでしょうか? 両者間で文字化けなどが発生しないのかを確認したいです。 Unicodeの知識もあまりないので、その辺を踏まえて、 回答いただけますと幸いです。

    • 締切済み
    • XML