• ベストアンサー

switchでエラー

Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in C:\path\file.php on line 11 この行を見る限りどこも悪くは無い気がしますが・・・ (ヒアドキュメント) 10:HEADER_HTML; 11:switch ($_GET['mode']){ 12: case 'edit': どこが悪いのでしょうか。

noname#95826
noname#95826
  • PHP
  • 回答数2
  • ありがとう数3

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

  • ベストアンサー
  • 0x131cc6e
  • ベストアンサー率36% (42/115)
回答No.1

エラーとして報告される行そのものではなく、その前の行に問題がある場合が多々あります。 例えばセミコロンの入れ忘れなどで2つの処理が一続きに扱われたりなどです。 雰囲気的にはヒアドキュメントの書き方にマズイ点がありそうですが。 ヒアドキュメントをまるごとコメントアウトするか削除して、単純な文($hoge = "**";など)にしてもエラーが出るかどうか確認してみては?

noname#95826
質問者

お礼

自己解決しました。 原因は終了マークの行の前にTabが入っていたので、終了マークと認識していませんでした。

noname#95826
質問者

補足

$hoge = 'ほげ'; にしても同様のエラーが出ます。

その他の回答 (1)

  • asuncion
  • ベストアンサー率33% (2126/6288)
回答No.2

そのスクリプトの1~9行目も見せてください。

noname#95826
質問者

お礼

自己解決しました。 原因は終了マークの行の前にTabが入っていたので、終了マークと認識していませんでした。

noname#95826
質問者

補足

<?php echo <<< HEADER_HTML <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <title>randomad</title> </head> <body> HEADER_HTML; ですけど、何か問題があるのでしょうか。

関連するQ&A

  • エラーの意味!

    初めて見るエラーで困ってます!! どなたか教えてください! Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in /***/***/***/test.php on line 331

    • ベストアンサー
    • PHP
  • 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 です。よろしくお願いいたします。

  • ブログが見れません。

    暇つぶし感覚でブログを覗いていたのですが、 エラーのようなものがでてしまいました。 Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /virtual/talentblog/public_html/tllink/tllink.php on line 106 なぜですかね? ご指導下さい。

  • 「Tok2」無料ホームページについて

    「Tok2」のサイトで無料ホームページを作成してしばらく使っていたら,「Parse error: parse error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/tok2/html/sr.tok2.com/chenge2/cms_tool/tmp/www○.tok2.com○○_2007-10.dat on line 53」,日本語だと「エラーを解析してください:エラー(予想外の『「T_STRINGまたはT_VARIABLEまたは中で/家でT_NUM_STRINGを予想する第53行の上で、/tok2/html/sr.tok2.com/chenge2/cms_tool/tmp/www○.tok2.com○○_2007-10.dat)を解析してください」と出て,ブログが表示されなくなってしまったのですが,どうすれば直りますか?

  • 【超初歩】$_POST["Var"]とかダブルクォーテーションの書き方が間違ってますか?

    $sql = "UPDATE Enquete SET MyName = \"$_POST['MyName']\""; という書き方が, Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\temp\temp.php on line 10 みたいな扱いを受けてしまうのはなぜでしょうか. $Name = $_POST["MyName"]; $sql = "UPDATE Enquete SET MyName = \"$Name\""; とすればエラーにならないですが.

    • ベストアンサー
    • PHP
  • Parse errorについて質問です

    オーサカPHPさんのw3Analyzerと言うアクセス解析を使ってみようと思い 設置してログを見ようとすると、 Parse error: syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in /××××/w3a/w3a.php on line 82 と出るのですが、これはw3a.phpの82行目がおかしいとでているのでしょうか? w3a.phpは一切なにも変更はしていないのですが・・・ PHP4の環境向けに作られていると書いてあり、自分のサーバーのPHPのバージョンを見てみるとPHP 4.4.8と書いてありました。 これはPHP4と言うことでいいのでしょうか?

    • ベストアンサー
    • PHP
  • PHPでのQUERY_STRINGの使い方

    PHPを勉強中です。 URLの?以降の文字列を取得し、それが正規表現で 数字と()、/*+-の数式に一致するかどうかを割り出したいです。 echo preg_match("/[^0-9\(\)\+\*\/-]/", "$_SERVER['QUERY_STRING']"); としたところ、 Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) とエラーが出てしまいます。記述の仕方が悪いのでしょうか。 ご教示お願い致します。

    • ベストアンサー
    • PHP
  • PHPでエラーがでてしまって困っています。

    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /Applications/MAMP/htdocs/5-2-1.php on line 30 このエラーを解消できません。 下記は実践マスターPHP+MYSQLという書籍のなかのサンプルなんですが、どこが間違っているかどなたか教えていただけないでしょうか? エラーを検索するとダブルクォーテーションの使い方が原因と書いてあるんですが、最近PHPを勉強したばかりでどうやっても解決できません。 function check_3(&$str){ $str =str_replace($GLOBALS["from"],$GLOBALS["to"],$str);  ←この行でエラー global $msg; $msg = $GLOBALS["from"].'から'.$GLOBALS["to"].'へ置換しました!<br>'; return strlen($str); } 宜しくお願いします。

    • 締切済み
    • PHP
  • 連想配列を含むヒアドキュメントの書き方

    連想配列を含むヒアドキュメントの書き方を教えてください。 以下のコードならうまく行きました。 -(1)-------------------------- $SS = $_SERVER['PHP_SELF']; $html_txt = <<<EOT ($SS) EOT; echo $html_txt; ------------------------------ これを一時的な変数を使わずに以下のようなコードで実行したいです。 -(2)-------------------------- $html_txt = <<<EOT ($_SERVER['PHP_SELF']) EOT; echo $html_txt; ------------------------------ これを実行すると # Parse error: syntax error, unexpected '"', # expecting T_STRING or T_VARIABLE or T_NUM_STRING in … というエラーが出てしまいます。 最悪、(1)でもいいと思っています。しかし(2)のようなケースでもできてもいいのではないかと思うのですが、エスケープを入れたり「$_SERVER["PHP_SELF"]」などとクォーテーションを変更したりしてもうまく行きません。 質問は以下です ・(2)のような記述はPHPでは不可能なのでしょうか? ・もし可能なら(1)の何が悪いのか、どうすればうまく行くのかを教えてください よろしくお願いします。

    • ベストアンサー
    • PHP
  • 文法エラーが解決出来ません・・

    phpでパースエラーが出るのですが、ドコが間違っているのかが解りません。 ============エラー文========================================= Parse error: syntax error, unexpected T_CHARACTER, expecting T_STRING or T_VARIABLE or T_NUM_STRING on line 296 ============================================================= ============エラーのソース(左の数字が行番号)================= 295|$str = " 296|//<form method=\"post\" action=\"$SERVER[\"PHP_SELF\"]\" enctype=\"multipart/form-data\" > ・ ・ 472|</html>"; 473|$str = mb_convert_encoding($str, "SJIS", "EUC-JP"); 474|echo $str; ============================================================= 295行目の$strに296行目から472行目までのHTML記述を代入して最後の行で出力しようとしているものです。 ちなみに、296行目のエスケープ(//)は、エスケープしてもしなくても296行目にエラーが出ます。 どなたか心当たりありましたらご意見宜しくお願いします!

    • ベストアンサー
    • PHP

専門家に質問してみよう