你好,我想创建字符串数组。我有4个变量:
<?php
$name = "John";
$address = "Moscow";
$born_date = "13-11-1995";
$color = "red";
$join = $name.":".$address.":".$born_date.":".$color;
$array = explode(':', $join);
print_r ($array);
?>
这个数组结果是:
Array ( [0] => John [1] => Moscow [2] => 1995-11-13 [3] => red )
当我把$color
变量改成null
,比如$color="";
结果如下:
Array ( [0] => John [1] => Moscow [2] => 1995-11-13 [3] => )
我不希望array
3出现。我想要所有$variable == NULL
/$variable=="undefined"
/$varable=""
显示如下:
Array ( [0] => John [1] => Moscow [2] => 1995-11-13)
数组只显示变量填充
我不确定您的要求是什么,但通过将变量连接在一起然后爆炸来创建这个数组似乎很奇怪。您可以直接将它们添加到数组中,并有条件地添加颜色:
$array = array($name, $address, $born_date);
if ($color) {
$array[] = $color;
}
如果您需要有条件地添加所有元素,您可以创建一个包含所有元素的数组,然后像Rasclatt建议的那样使用array_filter来消除空元素。
$array = array($name, $address, $born_date, $color);
$array = array_filter($array);
如果键保持顺序很重要,可以使用
$array = array_values(array_filter($array));