Diferencia entre mysqli_fetch_array() y mysqli_fetch_object() en PHP

En este artículo, veremos las funciones mysqli_fetch_array() y mysqli_fetch_object() en PHP. La función mysqli_fetch_object() devuelve objetos de la base de datos, mientras que la función mysqli_fetch_array() ofrece una array de resultados. Esto permitirá que se utilicen nombres de campo para acceder a los datos.

Función mysqli_fetch_object(): esta función devuelve un objeto con propiedades que coinciden con las propiedades de la fila recuperada y avanza el puntero de datos interno. Solo podemos acceder a los datos por los nombres de campo específicos, y no por sus compensaciones. Devuelve un objeto que contiene propiedades que coinciden con la fila recuperada o FALSO si no hay más filas disponibles.

Sintaxis:

mysqli_fetch_object(data);

Parámetros:

  • datos: el recurso de datos que se está evaluando. Este resultado proviene de una llamada a la función mysqli_query().

Ejemplo: Este ejemplo describe la función  mysqli_fetch_object() que obtiene la siguiente fila de un conjunto de resultados como un objeto.

Supongamos que tenemos una tabla llamada estudiantes que tiene los siguientes valores de datos:

Crear mesa:

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

Insertar en la tabla:

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

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

Después de crear la tabla, aparecerá la siguiente estructura de tabla.

Identificación del Estudiante nombre del estudiante
01 A B C
02 xyz

PHP

<?php
 
$con = mysqli_connect("localhost", "root",
    "", "mydb") or die(mysqli_error($con));
 
$select_query = "SELECT * FROM students";
 
$select_query_result = mysqli_query($con,
    $select_query) or die(mysqli_error($con));
 
while ($row = mysqli_fetch_object($select_query_result)) {
    echo $row->student_id;
    echo " ";
    echo $row->student_name;
}
 
mysqli_free_result($select_query_result);
 
?>

Producción:

01 Abc
02 Xyz

Función mysqli_fetch_array() : se utiliza para obtener filas de la base de datos y almacenarlas como una array. La array se puede obtener como una array asociativa , como una array numérica o ambas.

Sintaxis:

mysqli_fetch_array(result, arrayType);

Parámetros:

  • resultado: El resultado del recurso que se está evaluando. Este resultado proviene de una llamada a la función mysqli_query().
  • arrayType: el tipo de array que se va a buscar. Es una constante y puede tomar los siguientes valores: MYSQLI_ASSOC, MYSQLI_NUM o MYSQLI_BOTH.

Ejemplo: este ejemplo describe la función mysqli_fetch_array() que devuelve una array que corresponde a la fila recuperada y mueve el puntero de datos interno hacia adelante.

Supongamos que tenemos una tabla llamada estudiantes que tiene los siguientes valores de datos:

Crear mesa:

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

Insertar en la tabla:

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

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

Después de crear la tabla, aparecerá la siguiente estructura de tabla.

Identificación del Estudiante nombre del estudiante
01 A B C
02 xyz

PHP

<?php
 
$con = mysqli_connect("localhost", "root",
    "", "mydb") or die(mysqli_error($con));
 
$select_query = "SELECT * FROM students";
 
$select_query_result = mysqli_query($con,
    $select_query) or die(mysqli_error($con));
 
while ($row = mysqli_fetch_array($select_query_result)) {
    echo $row['student_id'] . " " . $row['student_name'];
}
 
mysqli_free_result($select_query_result);
 
?>

Producción:

01 Abc
02 Xyz

Diferencia entre la función mysqli_fetch_array() y mysqli_fetch_object():

Función mysqli_fetch_object(): Obtener una fila de resultados como un objeto.

Función mysqli_fetch_array(): Obtener una fila de resultados como una combinación de array asociativa y array normal.

Veamos las diferencias en forma tabular -:

  mysqli_fetch_array() mysqli_fetch_object() 
1. Obtiene una fila de resultados como una array asociativa y una array numérica. Se utiliza para devolver la fila de un conjunto de resultados.
2.

Su sintaxis es -:

$mysqli_result -> fetch_array(result_type)

Su sintaxis es -:

$mysqli_result -> fetch_object(nombre de clase, parámetros)

3. Toma un parámetro que es un resultado. Toma dos parámetros que son el nombre de la clase y la array de parámetros.
4. Su valor de retorno es una array de string. Devuelve un objeto con propiedades de string para la fila recuperada.
5. Es compatible con PHP versión 5+ Es compatible con PHP versión 5+

Publicación traducida automáticamente

Artículo escrito por sanketnagare y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *