MYSQLi选择/获取到一个数组

时间:2014-06-26 21:48:43

标签: php mysql arrays mysqli

我试图将MYSQLi数据返回到数组中,但它没有进入我想要的形式。

$sql = <<<SQL
SELECT *
FROM pricee 
ORDER BY idd ASC
SQL;


if(!$result = $db->query($sql)){
die('There was an error running the query [' . $db->error . ']');
}

while($row = $result->fetch_assoc()){
$price=$row['price'];


$tt=(array)$price;
$i=(array)$row['idd'];
$p=array_combine($i,$tt);
print_r($p);
}

这给了我以下表格中的$ p

Array ( [1] => "0.99" ) Array ( [2] => "0.47" ) Array ( [3] => "0.49" ) 

但我需要以下内容:

Array ( [1] => 0.99 [2] => 0.47 [3] => 0.49) 

如何以该格式转换?

1 个答案:

答案 0 :(得分:1)

最简单的:

while($row = $result->fetch_assoc()){
    $p[$row['idd']] = $row['price'];
}

我不知道这是否是故意的,但是如果你还要显示一个字符串来浮动转换,那么:

    $p[$row['idd']] = (float)$row['price'];  // or use floatval()