如何使数组中的空元素被视为不存在于 PHP 中?

How to make an empty element in array be considered non existing in PHP?

$var1=1; $var2=2; $var3='';
$array= array ( $var1 , $var2, $var3 );

echo count($array);
// Result (3)

我希望计数结果为 (2) 并且尽可能不循环。 我想知道是否有办法,因为我假设有 3 个键。如何消除具有空值的键?这对我来说可以简化很多事情。

您可以使用 array_filter 只保留数组中的非空值,如下所示:

array_filter($array);

所以,只计算非空:

count(array_filter($array));

针对您在评论中提到的问题。看看这是否有帮助:

假设您有以下数组和查询 $sql:

$arr ="$name, $pass, $email, $contact, $company";
$result = $connection->prepare("$sql");
$newarr = array_merge( (array) $types, $arr);
call_user_func_array(array($result, 'bind_param'), $newarr);

使用

取消设置():

$var1=1; $var2=2; $var3='';
$array= array ( $var1 , $var2, $var3 );
unset($array[2]);

echo count($array);