mysql_fetch_object

(PHP 4, PHP 5)

mysql_fetch_object从结果集中取得一行作为对象返回

Warning

本扩展自 PHP 5.5.0 起已废弃,并在自 PHP 7.0.0 开始被移除。应使用 MySQLiPDO_MySQL 扩展来替换之。参见 MySQL:选择 API 指南以及相关 FAQ 来获取更多信息。用以替代本函数的有:

说明

mysql_fetch_object ( resource $result [, string $class_name [, array $params ]] ) : object

返回一个对象,其属性与获取的行相对应,并将内部数据指针向前移动。

参数

result

resource 型的结果集。此结果集来自对 mysql_query() 的调用。

class_name

要实例化、设置属性并返回的类的名称,如果不指定,默认返回 stdClass 对象。

params

可选 array 数组参数,会传递给 class_name 类的构造函数。

返回值

返回根据所取得的行生成的对象 object,如果没有更多行则返回 FALSE

范例

Example #1 mysql_fetch_object() example

<?php
mysql_connect
("hostname""user""password");
mysql_select_db("mydb");
$result mysql_query("select * from mytable");
while (
$row mysql_fetch_object($result)) {
    echo 
$row->user_id;
    echo 
$row->fullname;
}
mysql_free_result($result);
?>

Example #2 mysql_fetch_object() example

<?php
class foo {
    public 
$name;
}

mysql_connect("hostname""user""password");
mysql_select_db("mydb");

$result mysql_query("select name from mytable limit 1");
$obj mysql_fetch_object($result'foo');
var_dump($obj);
?>

注释

Note: Performance

速度上,本函数和 mysql_fetch_array() 一样,也几乎和 mysql_fetch_row() 一样快(差别很不明显)。

Note:

mysql_fetch_object()mysql_fetch_array() 类似,只有一点区别 - 返回一个对象而不是数组。间接地也意味着只能通过字段名来访问数组,而不是偏移量(数字是合法的属性名)。

Note: 此函数返回的字段名大小写敏感

Note: 此函数将 NULL 字段设置为 PHP NULL 值。

参见