首页 > 解决方案 > 以数组形式返回 mysql_fetch_assoc 结果

问题描述

我正在尝试从 mysql 查询中检索结果作为数组。这是代码示例:

function get_view_options($table) {
    include('config.php');
    $conn = new mysqli($sql['host'],$sql['username'],$sql['password'],$sql['database']);
    if ($conn->connect_error){
        die("Connection failed: " . $conn->connect_error);
    }
    $query = "SELECT name FROM options WHERE page='".$table."' AND type='view' AND value='1'";
    $options = $conn->query($query)->fetch_assoc();
    $conn->close();
    return $options;
}
$options = get_view_options($page);

这是我得到的结果print_r ($options);Array ( [name] => location )

这是我希望得到的: Array ( [0] => location [1] => owner [2] => id )

任何关于我如何实现这一目标的建议将不胜感激。

标签: phpmysqlarrays

解决方案


谢谢@aynber!这是 fetch_all() 的最终代码

<?php
    function get_view_options($table) {
        include('config.php');
        $conn = new mysqli($sql['host'],$sql['username'],$sql['password'],$sql['database']);
        if ($conn->connect_error){
            die("Connection failed: " . $conn->connect_error);
        }
        $query = "SELECT name FROM options WHERE page='".$table."' AND type='view' AND value='1'";
        $options = $conn->query($query)->fetch_all();//changed from fetch_assoc()

        $conn->close();
        return $options;
    }
    //We create an array with all the results
    $options = array();
    foreach(get_view_options($page) as $option){
        array_push($options,$option[0]);
    }
    print_r ($options);
?>

哪个输出:数组([0] => location [1] => owner [2] => id)


推荐阅读