Php 确定数组键值是否为空
我有一个如下所示的数组,正如您可以看到最后一个数组[adad]值为空,如何编写if语句来判断它是否为空Php 确定数组键值是否为空,php,arrays,Php,Arrays,我有一个如下所示的数组,正如您可以看到最后一个数组[adad]值为空,如何编写if语句来判断它是否为空 Array ( [K] => Array ( [0] => mabel__chan [1] => mabel chan ) [B] => Array ( [0]
Array
(
[K] => Array
(
[0] => mabel__chan
[1] => mabel chan
)
[B] => Array
(
[0] => kieron br
)
[C] => Array
(
[0] => a br
[1] => a
)
[adad] => Array
(
[0] =>
)
)
我尝试过这样做
if (count(array_filter($array)) == 0) {}
伪代码
if(array[key] == blank) {
echo "is blank";
} else {
echo "isn't blank";
}
**PHP脚本这是我从mongoDB获取数据的方式*
当我使用echos时,下面的答案是正确的,但是现在当我尝试进入新的阵列时,它在某个地方坏了,我再也得不到任何数据了
$col = "A" . $user->agencyID;
$db = $m->rules;
$collection = $db->$col;
$id = $_POST['ruleID'];
$search = array(
'_id' => new MongoId($id)
);
$cursor = $collection->find($search);
$validTagsArray = array();
$validArray = array();
foreach ($cursor as $key => $value) {
$temp = array_walk($array, function($v, $k) {
if (count(array_filter($v)) === 0) {
foreach ($value['AutoFix'] as $keyTwo => $valTwo) {
$x = 0;
$validTagsArray['data'][] = array($keyTwo, $x);
}
} else {
foreach ($value['AutoFix'] as $keyTwo => $valTwo) {
$x = 0;
foreach ($valTwo as $key => $value) {
$x++;
}
$validTagsArray['data'][] = array($keyTwo, $x);
}
}
});
}
echo json_encode($validTagsArray);
您可以写为:
if([adad][0]== " ")
{
}
您也可以尝试以下方法:
foreach($array as $key=>$value){
if(empty($value))
echo "empty";
}
你可以试试这个-
$array = array
(
'K' => array('0' => 'mabel__chan','1' => 'mabel chan'),
'B' => array('0' => 'kieron br'),
'C' => array('0' => 'a br', '1' => 'a'),
'adad' => array('0' => '')
);
$temp = array_walk($array, function($v, $k) {
if(count(array_filter($v)) === 0) { // check the count of non-empty elements in the sub array
echo $k . ' is empty';
}
});
输出
adad is empty
您可以使用if(空($arr[$key])。尝试==“”?花点时间阅读帮助中心中的。堆栈溢出上的格式设置与其他站点不同。好吧,当我使用echos时,它工作正常,但现在破坏了我的php脚本,我似乎不知道在哪里?(我把整个剧本都包括在我的帖子里)破产了?你犯了什么错误?没有代码就无能为力。
array\u walk
不能那样工作。检查。你应该加上适当的问题。你也应该了解变量的范围。你的答案是我问的,尽管在使用它之后,我制造了一个错误。