尝试使用while循环在数组中打印二级数组,同时从数据库

时间:2016-12-14 13:26:46

标签: php arrays database while-loop

我现在想要敲打我的脑袋。我无法解决它..没有意义。

$sql = "SELECT x,y FROM datapoints ";
$result = $conn->query($sql) ;

if ($result->num_rows > 0) {
    // output data of each row
    $dataPoints = array(
        while($row = $result->fetch_assoc()) {
            array("x" => $row["x"], "y" => $row["y"])   
            if  ($result->num_rows > 1) { 
                echo ",";
            }
        }  
    );
} else {
    echo "0 results";
}

我收到此代码的错误

  

解析错误:语法错误,意外'而'(T_WHILE),期待')'

我的预期结果如下

$dataPoints = array(
    array("x" => 800, "y" => 350),
    array("x" => 900, "y" => 450),
    array("x" => 850, "y" => 450),
    array("x" => 1250, "y" => 700),
    array("x" => 1100, "y" => 650),
    array("x" => 1350, "y" => 850),
    array("x" => 1200, "y" => 900),
    array("x" => 1410, "y" => 1250),
    array("x" => 1250, "y" => 1100),
    array("x" => 1400, "y" => 1150),
    array("x" => 1500, "y" => 1050),
    array("x" => 1330, "y" => 1120),
    array("x" => 1580, "y" => 1220),
    array("x" => 1620, "y" => 1400),
    array("x" => 1250, "y" => 1450),
    array("x" => 1350, "y" => 1600),
    array("x" => 1650, "y" => 1300),
    array("x" => 1700, "y" => 1620),
    array("x" => 1750, "y" => 1700),
    array("x" => 1830, "y" => 1800),
    array("x" => 1900, "y" => 2000),
    array("x" => 2050, "y" => 2200),
    array("x" => 2150, "y" => 1960),
    array("x" => 1750, "y" => 1750),
    array("x" => 1830, "y" => 1800),
    array("x" => 1900, "y" => 2000),
    array("x" => 2050, "y" => 2200),
    array("x" => 2150, "y" => 1960),
    array("x" => 2250, "y" => 1990)
);

2 个答案:

答案 0 :(得分:1)

我希望这会对你有所帮助:

$ sql =“SELECT x,y FROM datapoints”;         $ result = $ conn-> query($ sql);

    if ($result->num_rows > 0) {
        // output data of each row
        while ($row = $result->fetch_assoc()) {
            $dataPoints[] = array("x" => $row["x"], "y" => $row["y"]);
        }
    } else {
        echo "0 results";
    }

答案 1 :(得分:0)

尝试类似的东西:

$sql = "SELECT x,y FROM datapoints ";
$result = $conn->query($sql) ;

if ($result->num_rows > 0) {
    // output data of each row
    $dataPoints = array();
    while($row = $result->fetch_assoc()) {
        $dataPoints[] = array("x" => $row["x"], "y" => $row["y"]);
    }
    print_r($dataPoints);
} else {
    echo "0 results";
}