エラーが発生しないように、キーが配列内にあるかどうかを素早く特定したいと思います。ディープアレイ値が存在するかどうかを確認する方法
は例えば、私は全くの$ ARR [ 'F'] [ 'B']のいずれかの変数を持っていない可能性があります。この
$arr['f']['b']['g'] = array('a', 'b', 'c',) ;
や配列のような配列を持っているかもしれません:
$arr['f']['x'] = array() ;
$ arr ['f'] ['b'] ['g']の(おそらく)内容を参照する際にテストで繰り返しを避けるにはどうすればよいですか?
if (isset($arr['f']) &&
isset($arr['f']['b']) &&
isset($arr['f']['b']['g']) /* ... yawn */) {
/* blah */
}
私が参照している特定の配列値が存在するかどうかを識別するために、より簡潔な方法が必要ですか?私が求めている価値と、そのすべての祖先の両方の存在をテストしなければならないのはあまりにも冗長すぎるようです。いくつかの状況では意味がありますが、すべてではありません。例によって
:それは私がすぐにカートはどうかユーザーのチェックそれぞれを含めることなく、エントリを持っているかどうかを確認する方法をしたい、と言う、USER->セッション - >カートを表すことができます存在し、その後、セッションが存在するかどうか、そしてカートが存在するかどうか、そして...
編集:私は、「『G』のキー名を持つ配列の値が存在しない」を探していませんよ、 「f => b => gの祖先を持つ配列値が存在する」という意味です。
ハァッ!うまく見つけました:) –
明確にするために、これは '$ a'の存在を安全にテストします:' $ a'がセットされていなければfalseを返します。 –
うわー、これはうまくいきません。笑。 – baldrs