使用空值格式化php echo
假设我有一个名为使用空值格式化php echo,php,implode,notnull,Php,Implode,Notnull,假设我有一个名为$t的php数组,其中包含5个元素。出于演示目的,我们将其命名为$t=[a,b,c,d,e] 我想回显括号中的所有元素,如下所示: (a、b、c、d、e)。但是,如果数组$t中存在空值,我希望此括号格式保持不变 例如,如果c和d在数组中为空,则它应该回显(a、b、e)。在不尝试所有可能的排列的情况下(在大数组大小的情况下是不可能的),这样做的有效方法是什么 我试过: echo "(" for($j=0; $j<5; $j++){ if(!empty($t[j]
$t
的php数组,其中包含5个元素。出于演示目的,我们将其命名为$t=[a,b,c,d,e]
我想回显括号中的所有元素,如下所示:
(a、b、c、d、e)
。但是,如果数组$t
中存在空值,我希望此括号格式保持不变
例如,如果c
和d
在数组中为空,则它应该回显(a、b、e)
。在不尝试所有可能的排列的情况下(在大数组大小的情况下是不可能的),这样做的有效方法是什么
我试过:
echo "("
for($j=0; $j<5; $j++){
if(!empty($t[j])){
echo " $t[j], ";
}
}
echo ")"
echo“(“
对于($j=0;$j而言,这非常有效:
<?php
function is_not_null($v) { return !is_null($v); }
$t = ['a', 'b', null, null, 'e'];
echo '('.implode(',', array_filter($t, 'is_not_null')).')';
这很有效。完成后只需删除尾随逗号。使用rtrim()
即可。array\u filter
和join
是您的朋友…