嗨大家我在抓取对象时遇到问题,请参阅下面的代码。
表动物
-----------------------
id | type | name
-----------------------
1 Cat Muning
2 Kookaburra Bruce
3 Dog Bruce
-----------------------
Animal.php
class Animal extends DatabaseObject{
static $db_fields;
static $table_name = 'animals';
public function animal_group(){
global $database;
$sql = "SELECT animal_name as ani_name, COUNT(animal_name) as quantity FROM " . static::$table_name . " GROUP BY animal_name";
$stmt = $database->query($sql);
return $result = $database->fetch_object($stmt);
}
}
$animal = new Animal();
的index.php
<?php
require_once('includes/database.php');
require_once('includes/animal.php');
$ani = $animal->animal_group();
echo $ani->ani_name . " - " . $ani->quantity;
?>
结果
Bruce - 2
应该是什么
Bruce - 2
Muning - 1
我也尝试过While和Foreach,但仍然没有用。
答案 0 :(得分:3)
fetch_object
将一行行作为对象返回。如果你想获得所有这些,你必须在循环中调用它,否则使用另一个返回结果集中所有行的方法(如果你使用的是mysqli
,那就是fetch_all
)。
答案 1 :(得分:1)
您使用的是PDO吗?
使用fetchAll()代替fetch_object。