【PHP】Notice: Undefined offset


Notice: Undefined offset

エラー原因

このエラーは該当の配列に指定されたkey(値)がない場合に発生します。

<?php
$arr = [];
echo $arr['a'];

対処法

対処方法は3つ。

※対処方法として紹介している関数などはPHPのバージョンによっては使用できないのでご注意ください。


1つ目は配列に値を入れて入っているindexを指定する。

<?php
// 配列に値を入れる
$arr = ['a' => 1, 'b' => 2, 'c' => 3];
echo $arr['a'];

2つ目はNull 合体演算子の「??」を使用してdefault値を設定。

<?php
$arr = ['a' => 1, 'b' => 2, 'c' => 3];
// キー a がなければ 0 を出力
echo $arr['a']??0;

3つ目はissetを使用して配列のキーを確認。

<?php
$arr = ['a' => 1, 'b' => 2, 'c' => 3];
// キー 0 がなければ 0 を出力しない
if(isset($arr['a'])){
    echo $arr['a'];
}

0 件のコメント :

コメントを投稿