2011-10-20 21 views
0

キーが配列にない場合、PHPの動作に頼ることはできますか?キーが存在するかどうかわからない場合は、連想配列にアクセスすることはできますか?

定義されていない配列キーへのアクセスは、他の未定義変数へのアクセスと同じです:E_NOTICEレベルのエラーメッセージが発行され、結果はNULLになります。

たとえば、$ _POSTに特定のキーが含まれているとわからない場合は、試してみても問題ありませんか?とにかく結果がnullになりたい。それとも良い方法がありますか?

答えて

4

エラー報告機能をオンにして開発する必要があるため、エラー報告機能を有効にするために回避できないエラーが発生しないようにしてください。したがって、いいえ、それは大丈夫ではありません。 issetまたはemptyを使用してください。このトピックへのより詳細なエクスカーションについては、The Definitive Guide To PHP's isset And emptyを参照してください。

0

isset()またはempty()を使用してテストする必要があります。

+0

Downvotedをチェックしていません... –

1

isset()を使用すると、存在するかどうかを確認できます。

if(isset($_POST["key"])){// do stuff} 
0

キーは、キーはその後、array_key_exists(混合$キー、配列$検索は)便利になりますnullに設定されている場合でも存在するかどうかを確認する必要がある場合。しかし、それはisset()と比較して非常に遅いです。したがって、配列に含まれ、ヌルではないキーをチェックする場合は、isset()が使用されます。

0

isset()機能は、インデックスの警告からあなたを救うことができていないコメントでそれ最初

isset($_POST['notSure']) ? $var= $_POST['notSure'] : $var = null;

関連する問題