【初心者向け】PHPでよく見るエラーまとめとその対処法!原因と解決策をセットで解説

PHPを書いていると、よくわからないエラーメッセージがずらり…
Parse error」や「Undefined variable」など、見慣れない英語で不安になる方も多いのではないでしょうか?
この記事では、PHPでよく出るエラーを一覧で紹介し、それぞれの意味・原因・解決法をわかりやすく解説します。エラーを怖がらず、味方にしていきましょう!

① Parse error(構文エラー)

エラー例:

Parse error: syntax error, unexpected 'echo' in /path/to/file.php on line 5
構文(文法)のミス。特にセミコロン「;」の付け忘れや、カッコの閉じ忘れが多いです。
  • 各行の末尾にセミコロンがあるかチェック
  • iffunctionなどの括弧 () {} が正しく閉じられているか確認
// ❌
echo "こんにちは"

// ✅
echo "こんにちは";

② Undefined variable(未定義の変数)

エラー例:

Notice: Undefined variable: name in /path/to/file.php on line 3
まだ定義していない変数を使おうとしたときに出ます。スペルミスもよくある原因。
  • 該当変数が定義されているか確認
  • スペルミスがないか見直す
// ❌
echo $nam;

// ✅
$nam = "Taro";
echo $nam;

③ Warning: include(): failed to open stream

エラー例:

Warning: include(menu.php): failed to open stream: No such file or directory
include()require()指定したファイルが存在しない、またはパスが間違っている場合。
  • ファイル名のスペルや階層を見直す
  • __DIR__ を使って相対パスを正確に指定
// ✅
include(__DIR__ . '/menu.php');

④ Fatal error: Call to undefined function

エラー例:

Fatal error: Call to undefined function get_title() in /path/to/file.php on line 8
定義されていない関数を呼び出したときに出ます。スペルミスか、ファイルの読み込み忘れが多いです。
  • 関数名が正しいか確認
  • その関数が含まれるファイルが読み込まれているか確認
// ❌ get_title() ではなく
get_the_title(); // ✅ WordPressの正しい関数名

⑤ Cannot modify header information

エラー例:

Warning: Cannot modify header information - headers already sent by (output started at /path/to/file.php:1)
header() 関数のようにヘッダー情報を送信しようとしたときに、すでに出力が始まっていると出るエラー。
  • header() を使う前に何も出力していないこと(echo や HTML含む)を確認
  • ファイルの先頭に余計な空白や改行がないかチェック

⑥ Division by zero(0による除算)

エラー例:

Warning: Division by zero in /path/to/file.php on line 4
$a / 0 のように0で割っているときに出ます。
割る数が0でないかチェックして、条件分岐で処理を分けるのが基本です。
if ($divisor != 0) {
echo $value / $divisor;
} else {
echo "0で割ることはできません";
}

⑦ Unexpected end of file(ファイルの終わりが予期せぬ場所)

エラー例:

Parse error: syntax error, unexpected end of file in /path/to/file.php
閉じていない if 文や関数、クラスなどがある場合に出ます。
  • {}endif; の閉じ忘れを確認
  • エディタのコード整形機能(VS Codeなど)を活用

⑧ Too few arguments(引数不足)

エラー例:

Warning: Missing argument 1 for greet() in /path/to/file.php on line 3
関数に必要な引数を渡していないときに出ます。
  • 関数の定義と呼び出しを確認
  • 必要な数の引数があるかチェック
function greet($name) {
echo "こんにちは、$name さん";
}

greet("Taro"); // ✅

まとめ|PHPエラーの「読み方」を覚えよう!

エラー内容原因解決法
Parse error構文ミスセミコロンやカッコを確認
Undefined variable変数未定義変数の宣言・スペルミス確認
includeエラーファイルなしパスを正しく指定
undefined function関数名ミス関数名・読み込み確認
header error出力済みechoや空白がないか確認
Division by zero0で割ってる条件分岐で防止
Unexpected end閉じ忘れ{ } や endifの確認
Missing argument引数不足関数呼び出しの確認
著者プロフィール
原口 雄一

Webディレクター/コーダー。
webコーダーの経験が約10年あり、webサービスの立ち上げやメディア運営などをやっていました。

会社ではWeb系全般の相談を受けるので、守備範囲は結構広めです。

コーディング初心者の人からの質問も受けるので、参考になればとの想いで当ブログを始めました。

自社サイトはこちら

原口 雄一をフォローする
PHP

コメント

タイトルとURLをコピーしました