PHP字符串/变量数组和检查字符串/变量Null


PHP String/Variable To Array And Check String/Variable Null

你好,我想创建字符串数组。我有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));