[英]PHP How to check if array has not key and value
我正在使用由某人开发的一个自定义CMS,但出现问题以检查阵列结果。
该函数通过传递userids数组来返回用户名数组。
$all_users = "1,5,9,10,25,40"; // getting from database
$user_ids = explode(',', $all_users);
$usernames = get_userids_to_usernames($user_ids); //this returns usernames array by passing uesrids array
如果数据库在该列中没有用户,则该函数将返回奇怪的空/空数组,如下所示。
array(1) { [""]=> NULL }
(
[] =>
)
现在的问题是,我想检查数组是否为空或具有返回值,但是我尝试了所有方法is_null
, empty
, count($usernames) > 0
但这些都不起作用。
任何人都可以请我有条件地帮助我检查数组是否有值或为空,如上述空结果。
这是一种解决方法
if (array_key_exists('', $a) && $a[''] === null) {
unset($a['']);
}
然后检查空虚
您可以使用in_array
来检查数组是否为空值,并使用array_key_exists
来检查键。
in_array("", $array)
array_key_exists("", $array)
遍历数组,并检查键或值是否为空或null
$newarray = [];
foreach($array as $key=>$value)
{
if(is_null($value) || trim($value) == '' || is_null($value) || trim($key) == ''){
continue; //skip the item
}
$newarray[$key] = $value;
}
如果要使用空,请尝试使用数组过滤器
if (empty(array_filter($arr))) {
//Do something
}
数组过滤器将自动为您删除虚假值,并且如果需要更大的灵活性,则可以包括回调。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.