<?php
$a = [
['my_key' => null],
];
foreach ($a as $value) {
// это не массив? - переходим к следующей итерации
// первое охранное выражение прошли - значит это массив
// в этом массиве нет ключа "my_key"? - переходим к следующей итерации
// прошли оба охранных выражения - значит это массив и в нем есть ключ "my_key"
print "1. в этом массиве есть ключ my_key";
}
foreach ($a as $value) {
// это не массив? - переходим к следующей итерации
// первое охранное выражение прошли - значит это массив
// в этом массиве нет ключа "my_key"? - переходим к следующей итерации
if ( ! isset( $value["my_key"] ) ) continue;
// прошли оба охранных выражения - значит это массив и в нем есть ключ "my_key"
print "2. в этом массиве есть ключ my_key";
}
foreach ($a as $value) {
if ( is_array( $value ) && isset( $value["my_key"] ) ) print "3. в этом массиве есть ключ my_key"; }
PD9waHAKCiRhID0gWwogIFsnbXlfa2V5JyA9PiBudWxsXSwKXTsKCmZvcmVhY2ggKCRhIGFzICR2YWx1ZSkgewoJLy8g0Y3RgtC+INC90LUg0LzQsNGB0YHQuNCyPyAtINC/0LXRgNC10YXQvtC00LjQvCDQuiDRgdC70LXQtNGD0Y7RidC10Lkg0LjRgtC10YDQsNGG0LjQuAoJaWYgKCAhIGlzX2FycmF5KCAkdmFsdWUgKSApIGNvbnRpbnVlOwoJLy8g0L/QtdGA0LLQvtC1INC+0YXRgNCw0L3QvdC+0LUg0LLRi9GA0LDQttC10L3QuNC1INC/0YDQvtGI0LvQuCAtINC30L3QsNGH0LjRgiDRjdGC0L4g0LzQsNGB0YHQuNCyCgoJLy8g0LIg0Y3RgtC+0Lwg0LzQsNGB0YHQuNCy0LUg0L3QtdGCINC60LvRjtGH0LAgIm15X2tleSI/IC0g0L/QtdGA0LXRhdC+0LTQuNC8INC6INGB0LvQtdC00YPRjtGJ0LXQuSDQuNGC0LXRgNCw0YbQuNC4CglpZiAoICEgYXJyYXlfa2V5X2V4aXN0cyggIm15X2tleSIsICR2YWx1ZSApICkgY29udGludWU7CgoJLy8g0L/RgNC+0YjQu9C4INC+0LHQsCDQvtGF0YDQsNC90L3Ri9GFINCy0YvRgNCw0LbQtdC90LjRjyAtINC30L3QsNGH0LjRgiDRjdGC0L4g0LzQsNGB0YHQuNCyINC4INCyINC90LXQvCDQtdGB0YLRjCDQutC70Y7RhyAibXlfa2V5IgoJcHJpbnQgIjEuINCyINGN0YLQvtC8INC80LDRgdGB0LjQstC1INC10YHRgtGMINC60LvRjtGHIG15X2tleSI7Cn0KCmZvcmVhY2ggKCRhIGFzICR2YWx1ZSkgewoJLy8g0Y3RgtC+INC90LUg0LzQsNGB0YHQuNCyPyAtINC/0LXRgNC10YXQvtC00LjQvCDQuiDRgdC70LXQtNGD0Y7RidC10Lkg0LjRgtC10YDQsNGG0LjQuAoJaWYgKCAhIGlzX2FycmF5KCAkdmFsdWUgKSApIGNvbnRpbnVlOwoJLy8g0L/QtdGA0LLQvtC1INC+0YXRgNCw0L3QvdC+0LUg0LLRi9GA0LDQttC10L3QuNC1INC/0YDQvtGI0LvQuCAtINC30L3QsNGH0LjRgiDRjdGC0L4g0LzQsNGB0YHQuNCyCgoJLy8g0LIg0Y3RgtC+0Lwg0LzQsNGB0YHQuNCy0LUg0L3QtdGCINC60LvRjtGH0LAgIm15X2tleSI/IC0g0L/QtdGA0LXRhdC+0LTQuNC8INC6INGB0LvQtdC00YPRjtGJ0LXQuSDQuNGC0LXRgNCw0YbQuNC4CglpZiAoICEgaXNzZXQoICR2YWx1ZVsibXlfa2V5Il0gKSApIGNvbnRpbnVlOwoKCS8vINC/0YDQvtGI0LvQuCDQvtCx0LAg0L7RhdGA0LDQvdC90YvRhSDQstGL0YDQsNC20LXQvdC40Y8gLSDQt9C90LDRh9C40YIg0Y3RgtC+INC80LDRgdGB0LjQsiDQuCDQsiDQvdC10Lwg0LXRgdGC0Ywg0LrQu9GO0YcgIm15X2tleSIKCXByaW50ICIyLiDQsiDRjdGC0L7QvCDQvNCw0YHRgdC40LLQtSDQtdGB0YLRjCDQutC70Y7RhyBteV9rZXkiOwp9Cgpmb3JlYWNoICgkYSBhcyAkdmFsdWUpIHsKCWlmICggaXNfYXJyYXkoICR2YWx1ZSApICYmIGlzc2V0KCAkdmFsdWVbIm15X2tleSJdICkgKSBwcmludCAiMy4g0LIg0Y3RgtC+0Lwg0LzQsNGB0YHQuNCy0LUg0LXRgdGC0Ywg0LrQu9GO0YcgbXlfa2V5IjsKfQ==