如何编写要检查的函数 - 只要嵌套数组中的键中存在值存在,然后返回true
?
例如,
$input = array(
"path" => null,
"type" => array (
"post" => null,
"page" => null
),
"title" => null,
"category" => array(
"image" => "on"
)
);
function validate_array($input = array())
{
# Loop the array.
foreach($input as $key => $value)
{
if($value && !is_array($value)) return true;
elseif(is_array($value))
{
validate_array($value);
}
elseif($value)
{
return true;
}
}
# Return the result.
return false;
}
var_dump(validate_array($input)); // return bool(false)
它应该返回true
,因为其中一个嵌套数组 - 类别 - 的值
答案 0 :(得分:2)
# Loop the array.
foreach($input as $key => $value)
{
if($value && !is_array($value)) return true;
elseif(is_array($value))
{
//--->change this line to this<----
if validate_array($value) return true;
}
elseif($value)
{
return true;
}
}
另外,我认为你不需要那个最后的地方
答案 1 :(得分:1)
经过测试,应该可行。当找到值时返回true,否则返回false。
function validate_array($input = array())
{
# Loop the array.
foreach($input as $key => $value) {
if (isset($value)) {
if (is_array($value)) {
if (validate_array($value)) {
return true;
}
} else {
return true;
}
}
}
# Return the result.
return false;
}