📌  相关文章
📜  PHP中mysqli_fetch_array()和mysqli_fetch_object()的区别

📅  最后修改于: 2022-05-13 01:56:32.928000             🧑  作者: Mango

PHP中mysqli_fetch_array()和mysqli_fetch_object()的区别

在本文中,我们将看到PHP中的 mysqli_fetch_array() 和 mysqli_fetch_object()函数。 mysqli_fetch_object()函数从数据库返回对象,而mysqli_fetch_array()函数提供一个结果数组。这将允许使用字段名称来访问数据。

mysqli_fetch_object()函数:该函数返回一个对象,该对象的属性与获取的行的属性相匹配,并推进内部数据指针。我们只能通过特定的字段名称访问数据,而不是通过它们的偏移量。它返回一个包含与获取的行匹配的属性的对象,如果没有更多行可用,则返回 FALSE。

句法:

mysqli_fetch_object(data);

参数:

  • data:正在评估的数据资源。此结果来自对 mysqli_query()函数的调用。

示例:此示例描述了mysqli_fetch_object()函数,该函数将结果集的下一行作为对象获取。

假设我们有一个名为students的表,它具有以下数据值:

创建表:

CREATE TABLE students (
    student_id int(10),
    student_name VARCHAR(20)
)

插入表格:

Insert into students(
    student_id, student_name
) Values(01, 'Abc')

Insert into Students(
    student_id, student_name
) Values(02, 'Xyz')

创建表后,会出现如下表结构。

student_idstudent_name
01Abc
02Xyz

PHP
student_id;
    echo " ";
    echo $row->student_name;
}
  
mysqli_free_result($select_query_result);
  
?>


PHP


输出:

01 Abc
02 Xyz

mysqli_fetch_array()函数用于从数据库中获取行并将它们存储为数组。该数组可以作为关联数组、数值数组或两者同时获取。

句法:

mysqli_fetch_array(result, arrayType);

参数:

  • result:正在评估的资源的结果。此结果来自对 mysqli_query()函数的调用。
  • arrayType:要获取的数组类型。它是一个常量,可以采用以下值:MYSQLI_ASSOC、MYSQLI_NUM 或 MYSQLI_BOTH。

示例:此示例描述了mysqli_fetch_array()函数,该函数返回与获取的行相对应的数组并将内部数据指针向前移动。

假设我们有一个名为students的表,它具有以下数据值:

创建表:

CREATE TABLE students (
    student_id int(10),
    student_name VARCHAR(20)
)

插入表格:

Insert into students(
    student_id, student_name
) Values(01, 'Abc')

Insert into Students(
    student_id, student_name
) Values(02, 'Xyz')

创建表后,会出现如下表结构。

student_idstudent_name
01Abc
02Xyz

PHP


输出:

01 Abc
02 Xyz

mysqli_fetch_array() 和 mysqli_fetch_object()函数的区别:

mysqli_fetch_object()函数:获取结果行作为对象。

mysqli_fetch_array()函数:获取结果行作为关联数组和常规数组的组合。