Undefined variable
PHPで未定義の変数を参照した場合に発生するエラー
概要
Undefined variable は、PHPで定義されていない変数を参照しようとした場合に発生するエラーです。PHP 8.0以降ではWarning、それ以前ではNoticeとして報告されます。
エラーメッセージ
Warning: Undefined variable $username in /var/www/html/index.php on line 10
Notice: Undefined variable: username in /var/www/html/index.php on line 10
原因
- 変数の初期化忘れ: 変数を使用する前に値を代入していない
- スコープの問題: 関数内で外部変数にアクセスしようとしている
- タイプミス: 変数名のスペルミス
- 条件分岐での未定義: if文内でのみ変数が定義されている
解決策
1. 変数を初期化する
| |
2. isset() で存在確認
| |
3. 関数内でグローバル変数を使用
| |
4. 条件分岐での初期化
| |
5. クラスプロパティの初期化
| |
6. エラー報告レベルの設定(開発時)
| |
PHP 8.0以降の変更点
PHP 8.0以降では、未定義変数へのアクセスがNoticeからWarningに昇格しました。より厳格なエラーハンドリングが推奨されます。
| |
PHP の他のエラー
この記事は役に立ちましたか?