ホームページ  >  記事  >  バックエンド開発  >  解析エラー: 構文エラー、予期しない $end error_PHP チュートリアル

解析エラー: 構文エラー、予期しない $end error_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:55:561660ブラウズ

今日、開発中に構文エラー、予期しない $end エラー メッセージが発生しました。独自の要件によると、if else がペアで表示されない可能性があります。問題と解決策をまとめてみましょう。

慣れないPHPの機能もあるかもしれませんが、書いていくうちに少しずつ慣れていきます...

コードの作成とデバッグの問題は次のとおりです。

解析エラー: 構文エラー、D:xampphtdocsguestBookguestBook.php の 330 行目に予期しない $end があります

プログラムのコードの最後の行である 330 行目を見てください。これはどこが間違っているのでしょうか? Googleで検索すると、次のものが見つかりました:

PHP 5 では、php_info() による PHP スクリプトの呼び出しが完全に機能し、PHP 設定に関する情報が正常に返される場合でも、次のエラーが Apache エラー ログのエラー エントリとして表示されるか、単に PHP Web ページに表示されることがあります。

解析エラー: 構文エラー、予期しない $end in ….. scripts.php on line …

このエラーは、PHP スクリプトのコーディングで中括弧が欠落していることが原因で発生する可能性があります。また、PHP ではクラス定義を分割して複数のファイルに分散することはできないため、クラス定義の PHP コーディングのエラーによって発生する可能性もあります。ブレークがメソッド宣言内にない限り、PHP はブロックされます。

しかし、より一般的には、このエラーは PHP での Short Open タグの使用によって引き起こされることがよくあります

短いオープン タグを使用するには、PHP.INI で short_open_tag を検索し、その行を line:

に変更する必要があります。

short_open_tag = オン

英語が苦手な私をいじめているのですか?他の検索をいくつか見たが、どれも要点をつかめなかったので、すべてを翻訳することはできませんが、大まかな意味は明らかです:

短いタグが使用されているためにエラーが発生します

php.iniでshort_open_tag = Onを設定できます。

解析エラー プロンプトは通常、文法上のエラー、オープン タグの使用、ステートメントの終了でないことが判明しました。これは、ステートメントの最後に「;」を追加することに注意を払わなかったり、「」を忘れたりするなど、プログラミングにおける基本的な間違いです。 if(){...} の後 " ;"?>" を忘れました。コードを注意深く確認すると、「}」がどこかに抜けていて、修正したプログラムは正常に動作します

conn.php

/*

* bkJiaJob v1.0
* プログラマー: Msn/QQ haowubai@hotmail.com (925939)
* www.php100.com プロジェクトの開発 PHP - MySQL - Apache
* Window 2003 - 環境設定 - PHPeclipse - PHP - コード テンプレート
*/

$conn = @ mysql_connect("localhost", "root", "dong") または die("データベース リンク エラー");

mysql_select_db("ニュース", $conn);
mysql_query("set names 'GBK'"); // GBK 中国語エンコーディングを使用します;

関数 htmtocode($content) {

$content = str_replace("n", "
", str_replace(" ", " ", $content));
$content を返します;
}

//$content=str_replace("'","‘",$content);

//htmlspecialchars();

?>

/*

* bkJiaJob v1.0
* プログラマー: Msn/QQ haowubai@hotmail.com (925939)
* www.php100.com プロジェクトの開発 PHP - MySQL - Apache
* Window 2003 - 環境設定 - PHPeclipse - PHP - コード テンプレート
*/
include("conn.php");

include("head.php");

$SQL="SELECT * FROM `メッセージ` ID 記述順";
$query=mysql_query($SQL);
while($row=mysql_fetch_array($query)){
?>

<表幅=500 border="0" cellpadding="5" cellpacing="1" bgcolor="#add3ef">


タイトル: ユーザー:

コンテンツ: echo htmtocode($row[content]);
?>


}
?>
実行時に以下のエラーが発生します
解析エラー: 構文エラー、E:wampwwwleave_messagelist.php の 35 行目に予期しない $end があります

エラーの理由はこちら

}
?>

に変更します }
?>

解決策

タイトル、コンテンツ、ユーザーを に変更するだけでうまくいきます。関数は

です。

これは重要ではありません。せいぜいデータを表示できないだけです

エラーの理由はここにあります

}
?>

に変更します }
?>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632209.html技術記事今日、開発中に構文エラー、予期せぬ $end というエラー メッセージが表示されました。独自の要件によると、else がペアで表示されない可能性があります...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。