PHP Undefined index エラー
作成日時:2019/06/14
更新日時:2019/06/14
スポンサーリンク
この記事の確認環境
phpversion() : 7.2.7
エラー概要
連想配列から未定義のキーの要素を取得しようとすると発生します。
エラーメッセージ
PHP Notice: Undefined index
Noticeが発生するコード例
連想配列から未定義のキーの要素を取得しようとする
<?php $test_array = array('hoge' => 'apple', 'fuga' => 'banana'); $test = $test_array['test'];
Noticeの回避方法
isset()を使用し値が設定されていない場合は取得しないようにする
isset() - https://php.net/manual/ja/function.isset.php
<?php $test_array = array('hoge' => 'apple', 'fuga' => 'banana'); $test = isset($test_array['test']) ? $test_array['test'] : '';
array_key_exists()を使用しキーが定義されていない場合は取得しないようにする
array_key_exists() - https://php.net/manual/ja/function.array-key-exists.php
<?php $test_array = array('hoge' => 'apple', 'fuga' => 'banana'); $test = array_key_exists('test', $test_array) ? $test_array['test'] : 'Undef';
$_POST等のスーパーグローバル変数の場合はfilter_input()を使用する
filter_input - https://www.php.net/manual/ja/function.filter-input.php