PHP

Notice: Undefined variableの直し方【PHP】

「Notice: Undefined variable」とは

「Notice: Undefined variable」とは変数に値がないですというエラーです。

こちらのエラーメッセージに続く単語と行数で該当の変数が特定できます。

起こりうる原因

ここでは、起こりうる原因を探っていきます。

変数を宣言していない

echo $test;

↓

$test = "こんにちは";
echo $test;

変数の中の値に何も入っていないのでエラーが返ってきています。

キチンと変数の中に値をセットしましょう。

if文の分岐先にて値を設定していない

if (time("Hour") >= 18) {
    $test = "こんばんは";
}
echo $test;

↓

if (time("Hour") >= 18) {
    $test = "こんばんは";
} else {
    $test = "こんにちは";
}
echo $test;

if文の分岐にて18時以上なら$testの値に「こんばんは」をセットしますが、$testの値がそれ以外の時の対処をしていない時にもエラーがでてきます。

しっかりをelseを使用して設定しましょう。

強制的にエラーを出させない方法

強制的にエラーを非表示にする方法があります。issetです。

if($test){
}

↓

if(isset($test)){
}

使い方は下記にて確認してください。

https://www.php.net/manual/ja/function.isset.php