【问题标题】:PHP array and implode with blank/null valuesPHP数组和内爆空白/空值
【发布时间】:2013-05-27 10:49:45
【问题描述】:

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

$addressarray = array($results['client']->client_city, $results['client']->client_county, $results['client']->client_postcode);

值由用户使用 from 输入,上面的数组有效并且正确的值被放入其中,但是有时用户可能没有输入客户所在的县,因此

$results['client']->client_county

可能为空。 我用这个来调用数组。

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

现在这是我认为需要修复的部分,很明显,如果所有字段都有一个值,那么它们会用换行符显示,但是如果像我上面提到的那样,县是空白的,它会输出换行符,所以你会得到:

city

postcode

但我想要的是

city
postcode

我猜

\n

是问题,但我处于空白状态。任何帮助表示赞赏。

伊恩

【问题讨论】:

    标签: php arrays explode implode


    【解决方案1】:

    尝试在$adressesarray 上使用array_filter(),它会过滤空值。 更多array_filter()

    【讨论】:

      【解决方案2】:

      我认为您可以在使用implode() 函数之前将array_filter 用于您的数组

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

      【讨论】:

      • 您不需要回调array_filter 来检查值是否为空吗?还是 array_filter 默认这样做?
      • @TheSnookier If no callback is supplied, all entries of input equal to FALSE (see converting to boolean) will be removed.
      猜你喜欢
      • 2013-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-06
      • 2013-12-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多