我有一个简单的问题,我的MySQLi函数只显示一行/结果的var_dump:
$sql = $db->query('SELECT * FROM '.$db_prefix.'_posts');
$row = $sql->fetch_array();
var_dump($row);
而已。 在phpMyAdmin查询显示了3个结果。 这其中只有1次也没有用FETCH_ASSOC()或fetch_array工作()。
编辑:另外,我想有表的键被列为与“fetch_array()”。
尝试while循环:
while($row = $sql->fetch_row())
{
var_dump($row);
}
由于fetch_row()
fetch_array()
fetch_assoc()
将全部回报每一位烧毛时它被称为直到它“出列”一行。
你将不得不遍历结果。 您可以随时使用这样的事情:
$sql = 'SELECT * FROM '.$db_prefix.'_posts';
if ($result = $mysqli->query($sql)) {
while($obj = $result->fetch_object()){
var_dump($obj);
}
}
然而,这将输出大量的数据(因为的var_dump)。 对于一个干净的输出,你可以使用
$sql = 'SELECT * FROM '.$db_prefix.'_posts';
if ($result = $mysqli->query($sql)) {
while($obj = $result->fetch_object()){
echo $obj->*sql_columnname_here*; // Repeat for all columns
}
}
fetch_row()将只包含1行同时
尝试这个:
$sql = $db->query('SELECT * FROM '.$db_prefix.'_posts');
$rows= $sql->fetch_row();
while ($row = $rows->fetch_row()) {
echo $row[0]." ".$row[1];
}