为什么爆炸 return 整个数组?

Why does explode return whole array?

此代码 returns 整个数组而不是 false 或 NULL,因为掩码不匹配 ;

$a = " 6 . 2 . 828194 . 2 . 3 .";

var_dump(explode(';', $a));

如何解决这个功能?

结果是:

array(1) { [0]=> string(25) " 6 . 2 . 828194 . 2 . 3 ." }

你可以在爆炸之前测试分隔符是否存在,如果不存在则做你想做的。

$a = " 6 . 2 . 828194 . 2 . 3 .";
$delim = ";";

if(strpos($a, $delim) !== false){
    var_dump(explode($delim, $a));
}else{
    echo "null";
    // Or
    // $a[] = Null;
}

结果:null