Php/docs/function.mysql-fetch-object
mysql_fetch_object
(PHP 4, PHP 5)
mysql_fetch_object — 从结果集中取得一行作为对象返回
Warning 本扩展自 PHP 5.5.0 起已废弃,并在自 PHP 7.0.0 开始被移除。应使用 MySQLi 或 PDO_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
<?phpmysql_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
<?phpclass 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
值。
参见
- mysql_fetch_array() - 从结果集中取得一行作为关联数组
- mysql_fetch_assoc() - 从结果集中取得一行作为关联数组
- mysql_fetch_row() - 从结果集中取得一行作为枚举数组
- mysql_data_seek() - 移动内部结果的指针
- mysql_query() - 发送一条 MySQL 查询