Php 如何将多维数组合并到一维数组?

Php 如何将多维数组合并到一维数组?,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我有一个类方法,它以多维形式返回结果。我使用的方法是 public function getUserRoles($userId) { $sth = $this->dbh->prepare('SELECT role_id FROM user_roles WHERE user_id = :userId'); $sth->bindParam(':userId', $userId); $sth->execute(); $roles = array(

我有一个类方法,它以多维形式返回结果。我使用的方法是

public function getUserRoles($userId) {
    $sth = $this->dbh->prepare('SELECT role_id FROM user_roles WHERE user_id = :userId');
    $sth->bindParam(':userId', $userId);
    $sth->execute();
    $roles = array();
    while($row = $sth->fetch(PDO::FETCH_ASSOC)) {
        $roles[] = array($row['role_id']);
    }
    return $roles;
}
当我调用该方法时

print_r($acl->getUserRoles(1));
我得到的返回结果集是

Array ( [0] => Array ( [0] => 1 ) [1] => Array ( [0] => 2 ) [2] => Array ( [0] => 3 ) [3] => Array ( [0] => 4 ) [4] => Array ( [0] => 5 ) ) 
但是,我不希望在多维数组中返回值,而是希望返回上面的结果

Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
有没有PHP的本机函数来处理这个问题

谢谢

如果与
PDO::FETCH_列
选项一起使用,该函数就可以实现这一目的:

$roles = $sth->fetchAll(PDO::FETCH_COLUMN);
return $roles;
如果与
PDO::FETCH_列
选项一起使用,则该函数可实现此确切目的:

$roles = $sth->fetchAll(PDO::FETCH_COLUMN);
return $roles;

更改这行代码

$roles[] = array($row['role_id']);


getUserRoles
method

中更改这行代码

$roles[] = array($row['role_id']);


getUserRoles
method

中,谢谢!我正要问这个问题。谢谢!我正要问这个问题。