<?php $data = array(); if( $data[0] ) { // 真なら }else{ // 偽なら } とか書くと、$data[0]はまだ一度も定義されてないので警告が出ます。 これを回避しようと思ったら <?php $data = array(); if( isset($data[0]) && $data[0] ) { } って感じでissetを先に噛まさないといけないわけです。 でもね、なんつーか定義されてるとか関係無しに真偽値だけチェックしたい時もあるわけで、そーゆー時ってわざわざissetするのもめんどくさいので@使っちゃダメですか? <?php $data = array(); if( @$data[0] ) { } これってバッドノウハウ?それとも絶対やっちゃいけないこと? もうわかんねー。 追記 結論から言うとempty使えばまるっとOK <?php $