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