导航首页 » 技术教程 » PHP:MySQL函数mysql_fetch_object()的用法
PHP:MySQL函数mysql_fetch_object()的用法 146 2023-12-14   

mysql_fetch_object

(PHP 4, PHP 5)

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

说明

object mysql_fetch_object ( resource $result )

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

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

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

<?php

/* this is valid */
echo $row->field;
/* this is invalid */
echo $row->0;

?>

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

Example #1 mysql_fetch_object() 例子

<?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);
?>

参见 mysql_fetch_array(),mysql_fetch_assoc() 和 mysql_fetch_row()。

参数

result

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

class_name

The name of the class to instantiate, set the properties of and return. If not specified, a stdClass object is returned.

params

An optional array of parameters to pass to the constructor for class_name objects.

返回值

Returns an object with string properties that correspond to the fetched row, or FALSE if there are no more rows.

更新日志

版本 说明 5.0.0 Added the ability to return as a different object.

范例

Example #2 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 #3 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

Speed-wise, the function is identical to mysql_fetch_array(), and almost as quick as mysql_fetch_row() (the difference is insignificant).

Note:

mysql_fetch_object() is similar to mysql_fetch_array(), with one difference - an object is returned, instead of an array. Indirectly, that means that you can only access the data by the field names, and not by their offsets (numbers are illegal property names).

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

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

参见

mysql_fetch_array() - 从结果集中取得一行作为关联数组,或数字数组,或二者兼有 mysql_fetch_assoc() - 从结果集中取得一行作为关联数组 mysql_fetch_row() - 从结果集中取得一行作为枚举数组 mysql_data_seek() - 移动内部结果的指针 mysql_query() - 发送一条 MySQL 查询


!!!站长长期在线接!!!

网站、小程序:定制开发/二次开发/仿制开发等

各种疑难杂症解决/定制接口/定制采集等

站长微信:lxwl520520

站长QQ:1737366103