Php 在foreach元素中添加空间

Php 在foreach元素中添加空间,php,Php,我有两个foreach操作,如下所示 $sql = "select region_name from ".$GLOBALS['ecs']->table('region') . " where region_id in(".$order['province'].",". $order['city'].",".$order['district'].")"; $address = $GLOBALS['db']->getAll($sql); foreach($addr

我有两个foreach操作,如下所示

    $sql = "select region_name from ".$GLOBALS['ecs']->table('region') . " where region_id in(".$order['province'].",". $order['city'].",".$order['district'].")";
    $address = $GLOBALS['db']->getAll($sql);
    foreach($address as $vo){
        $region .= $vo['region_name'];
    }
    $order['1address'] = $region.$order['1address'];
    return $order;
}
以下是输出数据的示例:

阿拉巴马州科罗拉多州

我希望它是怎样的

阿拉巴马州科罗拉多州

唯一的错误是我不能用空白区分开阿拉巴马州和科罗拉多州。这可能是一个简单的操作,但如何操作呢?有什么想法吗

非常感谢。

试试这个:

if ($region == '') {
    $region = $vo['region_name'];
} else {
    $region .= ' ' . $vo['region_name'];
}

只需在
$region
$order['1address']
变量之间串联一个空格即可

下面的代码片段说明了如何实现这一点:

$order['1address'] = $region . " " . $order['1address'];

你可以不用费吹灰之力就试试这个

$region = explode(' ', array_column($address, 'region_name'));
$order['1address'] = $region . $order['1address'];

在这种情况下,我更喜欢使用数组,然后:

$region.=''.$vo['region_name'];
// initialize the array to avoid NOTICES
$region = array();
foreach ( $address AS $vo ) {
    // add each region name to a new element in the array
    $region[] = $vo['region_name'];
}

// implode the regions array to a string separated by a space
$region = implode( ' ', $region );