PHP如何将多维数组拆分成单个数组?

时间:2017-02-25 21:06:43

标签: php arrays multidimensional-array

我用来获取数组结果的简单代码:

require_once 'connect_to_mysql.php';
$sql = "SELECT * FROM protect";
$result = mysqli_query($conn, $sql);
$db_array = array();
    if (mysqli_num_rows($result) > 0){
        while ($row = mysqli_fetch_assoc($result)){
            $db_array[] = $row;
        }
    }
    echo '<pre>';
    print_r($db_array);
    echo '</pre>';

我从数据库中获取以下数组:

Array
(
    [0] => Array
        (
            [id] => 1
            [words] => cat
            [keyword] => nice cat
        )

    [1] => Array
        (
            [id] => 2
            [words] => good dog
            [keyword] => dog training
        )

    [2] => Array
        (
            [id] => 3
            [words] => love birds
            [keyword] => birds
        )

)

我希望将所有数据都放在一个数组中,如下所示:

Array
(
    [0] => cat
    [1] => good dog
    [2] => love birds
) 
你可以告诉我怎么能这样做吗? 谢谢。

3 个答案:

答案 0 :(得分:4)

按以下方式更改while()循环,

while ($row = mysqli_fetch_assoc($result)){
    $db_array[] = $row['words'];
}

答案 1 :(得分:3)

只需更改您的查询,无需获取您不使用的数据

$sql = "SELECT words FROM protect";

答案 2 :(得分:2)

您可以使用array_column功能执行此操作:

$smaller = array_column($db_array, 'words')