Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP数组,并使用空/空值进行内爆_Php_Arrays_Explode_Implode - Fatal编程技术网

PHP数组,并使用空/空值进行内爆

PHP数组,并使用空/空值进行内爆,php,arrays,explode,implode,Php,Arrays,Explode,Implode,我有一个由数据库中的值生成的数组,示例如下: $addressarray = array($results['client']->client_city, $results['client']->client_county, $results['client']->client_postcode); 值由用户使用from输入,上面的数组起作用,并将正确的值放入其中,但有时用户可能无法输入客户端县,因此 $results['client']->client_county

我有一个由数据库中的值生成的数组,示例如下:

$addressarray = array($results['client']->client_city, $results['client']->client_county, $results['client']->client_postcode);
值由用户使用from输入,上面的数组起作用,并将正确的值放入其中,但有时用户可能无法输入客户端县,因此

$results['client']->client_county
可能是空白的。 我用这个调用数组

$address = implode("\n  ", $addressarray);
现在这是我认为需要修复的部分,显然,如果所有字段都有一个值,那么它们将以换行符显示,但是如果像我上面提到的那样,县为空,它将stll输出一个换行符,这样您将得到:

city

postcode
但我想要的是

city
postcode
我猜是

\n
这是一个问题,但我还是一片空白。谢谢你的帮助


Ian

尝试在
$adressearray
上使用
数组过滤器()
,它会过滤空值。 有关更多信息,我认为您可以在使用
内爆()函数之前先使用数组

$address = implode("\n", array_filter($addressarray));

您不需要为array_filter回调以检查值是否为空吗?或者array_filter在默认情况下会这样做吗?@TheSookier
如果没有提供回调,则所有等于FALSE的输入项(请参见转换为布尔值)都将被删除。