<?php
function check($string) {
$result = false;
$ar = recursion($array);
$newArr = [];
foreach($ar as $v){
}
if((recursionValue("foo", $newArr) != false) && (recursionValue("bar", $newArr) != false) && recursionValue("bar", $newArr) == recursionValue("foo", $newArr)){
$result = true;
}
}
return $result;
}
function recursionValue
($foo, $array = array()){ foreach($array as $key => $value){
if($key == $foo){
return $value;
}
}
}
function recursion($array, $arrStatic = []){
static $foo = "foo";
static $bar = "bar";
foreach($array as $key => $value){
if($key == $foo || $key == $bar){
$arrStatic[] = [$key => $value];
}
$arrStatic = recursion($value, $arrStatic);
}
}
return $arrStatic;
}
$str = '{
"foo": "Test",
"lastName": "Sidorov",
"address": {
"bar": "Test",
"dem": "God",
"postalCode": 10001
},
"phoneNumbers": [
"495 111-1234",
"495 123-7654"
]
}';
PD9waHAKZnVuY3Rpb24gY2hlY2soJHN0cmluZykgewogICAkcmVzdWx0ID0gZmFsc2U7CiAgICAgICAgaWYoKGlzX3N0cmluZygkc3RyaW5nKSAmJiAoaXNfb2JqZWN0KGpzb25fZGVjb2RlKCRzdHJpbmcpKSB8fCBpc19hcnJheShqc29uX2RlY29kZSgkc3RyaW5nKSkpKSkgewogICAgICAgICAgICAkYXJyYXkgPSBqc29uX2RlY29kZSgkc3RyaW5nKTsKICAgICAgICAgICAgJGFyID0gcmVjdXJzaW9uKCRhcnJheSk7CiAgICAgICAgICAgICRuZXdBcnIgPSBbXTsKICAgICAgICAgICAgZm9yZWFjaCgkYXIgYXMgJHYpewogICAgICAgICAgICAgICAgJG5ld0FyciA9IGFycmF5X21lcmdlKCRuZXdBcnIsICR2KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZigocmVjdXJzaW9uVmFsdWUoImZvbyIsICRuZXdBcnIpICE9IGZhbHNlKSAmJiAocmVjdXJzaW9uVmFsdWUoImJhciIsICRuZXdBcnIpICE9IGZhbHNlKSAmJiByZWN1cnNpb25WYWx1ZSgiYmFyIiwgJG5ld0FycikgPT0gcmVjdXJzaW9uVmFsdWUoImZvbyIsICRuZXdBcnIpKXsKICAgICAgICAgICAgICAgICRyZXN1bHQgPSB0cnVlOyAgICAgICAKICAgICAgICAgICAgfSAgCiAgICB9CiAgICByZXR1cm4gJHJlc3VsdDsKfQpmdW5jdGlvbiByZWN1cnNpb25WYWx1ZSgkZm9vLCAkYXJyYXkgPSBhcnJheSgpKXsKICAgIGZvcmVhY2goJGFycmF5IGFzICRrZXkgPT4gJHZhbHVlKXsKICAgICAgICBpZigka2V5ID09ICRmb28pewogICAgICAgICAgICByZXR1cm4gICR2YWx1ZTsKICAgICAgICB9CiAgICB9Cn0KZnVuY3Rpb24gcmVjdXJzaW9uKCRhcnJheSwgJGFyclN0YXRpYyA9IFtdKXsKCiAgICBzdGF0aWMgJGZvbyA9ICJmb28iOwogICAgc3RhdGljICRiYXIgPSAiYmFyIjsKICAgIGZvcmVhY2goJGFycmF5IGFzICRrZXkgPT4gJHZhbHVlKXsKICAgIGlmKCRrZXkgPT0gJGZvbyB8fCAka2V5ID09ICRiYXIpewogICAgICAgICAgICAkYXJyU3RhdGljW10gPSBbJGtleSA9PiAkdmFsdWVdOyAgCiAgICAgICAgfQogICAgICAgIGlmKGlzX29iamVjdCgkdmFsdWUpKXsKICAgICAgICAgICAgICAgICAgICAkdmFsdWUgPSAoYXJyYXkpICR2YWx1ZTsKICAgICAgICAgICAgICAgICAgICAkYXJyU3RhdGljID0gcmVjdXJzaW9uKCR2YWx1ZSwgJGFyclN0YXRpYyk7IAogICAgICAgICAgICAgICAgfSAgIAogICAgfQogICAgcmV0dXJuICRhcnJTdGF0aWM7Cn0KCiRzdHIgPSAnewogICAiZm9vIjogIlRlc3QiLAogICAibGFzdE5hbWUiOiAiU2lkb3JvdiIsCiAgICJhZGRyZXNzIjogewogICAgICAgImJhciI6ICJUZXN0IiwKICAgICAgICJkZW0iOiAiR29kIiwKICAgICAgICJwb3N0YWxDb2RlIjogMTAwMDEKICAgfSwKICAgInBob25lTnVtYmVycyI6IFsKICAgICAgICI0OTUgMTExLTEyMzQiLAogICAgICAgIjQ5NSAxMjMtNzY1NCIKICAgICAgCiAgIF0KfSc7Cgp2YXJfZHVtcChjaGVjaygkc3RyKSk7Cg==