0

我想根据我的SELECT查询结果创建一个数组。

下面的代码有点作用——它只将最后一行添加到数组中。我尝试事先声明数组然后使用array_push,但该函数不允许我分配一个键,只是一个值。

    $sql = "SELECT setKey,setValue FROM tblsettings WHERE setApp = '".$data->app."' AND setIP = '".gethostbyname(trim(gethostname()))."'";
    $result = mysql_query($sql);
    if(!$result) die(mysql_error());

    if(mysql_num_rows($result) == 0){
        echo "null";
        exit;
    }

    while($datAssArr = mysql_fetch_assoc($result)){
        $datArr = array($datAssArr["setKey"] => $datAssArr["setValue"]);
    }

    print_r($datArr);
4

1 回答 1

1

代替:

$datArr = array($datAssArr["setKey"] => $datAssArr["setValue"]);

尝试:

$datArr[] = array($datAssArr["setKey"] => $datAssArr["setValue"]);
// ----^

另外,不要使用这些mysql_*功能。它们已被弃用。改用PDO

于 2013-10-28T00:56:47.940 回答