English | 简体中文 | 繁體中文
查询

mysqli_result::fetch_object()函数—用法及示例

「 从结果集中获取下一行作为一个对象,并且返回该对象 」


函数名:mysqli_result::fetch_object() 适用版本:PHP 5, PHP 7

函数描述:该函数用于从结果集中获取下一行作为一个对象,并且返回该对象。对象的属性名对应着结果集的列名。

语法:mixed mysqli_result::fetch_object ( string $class_name = "stdClass" , array $params = array )

参数:

  • class_name(可选):指定要实例化的对象的类名。默认为"stdClass",即返回一个标准对象。
  • params(可选):传递给类构造函数的参数数组。

返回值:成功时返回一个对象,失败时返回NULL。

示例:

// 假设已经建立了数据库连接 $conn,并执行了查询语句 $query

// 使用默认的类名 "stdClass",返回一个标准对象
$result = $conn->query($query);
if ($result->num_rows > 0) {
    while ($row = $result->fetch_object()) {
        echo $row->name . ", " . $row->age . "<br>";
    }
}

// 自定义类名和构造函数参数
class Person {
    public $name;
    public $age;
    
    public function __construct($name, $age) {
        $this->name = $name;
        $this->age = $age;
    }
}

$result = $conn->query($query);
if ($result->num_rows > 0) {
    while ($row = $result->fetch_object("Person", ["John", 30])) {
        echo $row->name . ", " . $row->age . "<br>";
    }
}

以上示例中,首先我们执行了一个查询语句并获取结果集 $result。然后,我们使用 while 循环遍历结果集中的每一行。在每一次循环中,我们使用 fetch_object() 方法将当前行转换为一个对象。如果使用默认的类名 "stdClass",我们可以直接通过对象的属性名访问列的值。如果我们指定了自定义的类名和构造函数参数,我们需要在类中定义相应的属性,并在构造函数中接收参数并赋值给属性。

补充纠错
热门PHP函数
分享链接