Mysql
 sql >> Base de données >  >> RDS >> Mysql

Différence entre mysql_fetch_array et mysql_fetch_row ?

Beaucoup de débutants en programmation php sont confus à propos des fonctions mysql_fetch_array(), mysql_fetch_row(), mysql_fetch_assoc() et mysql_fetch_object(), mais toutes ces fonctions effectuent un processus similaire.

Créons une table "tb" pour un exemple clair avec trois champs "id", "username" et "password"

Table :tb

Insérez une nouvelle ligne dans le tableau avec les valeurs 1 pour l'identifiant, tobby pour le nom d'utilisateur et tobby78$2 pour le mot de passe

db.php

<?php
$query=mysql_connect("localhost","root","");
mysql_select_db("tobby",$query);
?>

mysql_fetch_row()

Récupérer une ligne de résultat sous forme de tableau numérique

<html>
<?php
include('db.php');
$query=mysql_query("select * from tb");
$row=mysql_fetch_row($query);
echo $row[0];
echo $row[1];
echo $row[2];
?>
</html>

Résultat

1 tobby tobby78$2

mysql_fetch_object()

Récupérer une ligne de résultat en tant qu'objet

<html>
<?php
include('db.php');
$query=mysql_query("select * from tb");
$row=mysql_fetch_object($query);
echo $row->id;
echo $row->username;
echo $row->password;
?>
</html>

Résultat

1 tobby tobby78$2

mysql_fetch_assoc()

Récupérer une ligne de résultat sous forme de tableau associatif

<html>
<?php
include('db.php');
$query=mysql_query("select * from tb");
$row=mysql_fetch_assoc($query);
echo $row['id'];
echo $row['username'];
echo $row['password'];
?>
</html> 

Résultat

1 tobby tobby78$2

mysql_fetch_array()

Récupère une ligne de résultat sous la forme d'un tableau associatif, d'un tableau numérique et la récupère également à la fois par tableau associatif et numérique.

<html>
<?php
include('db.php');
$query=mysql_query("select * from tb");
$row=mysql_fetch_array($query);
echo $row['id'];
echo $row['username'];
echo $row['password'];

<span style="color: #993300;">/* here both associative array and numeric array will work. */</span>

echo $row[0];
echo $row[1];
echo $row[2];

?>
</html>

Résultat

1 tobby tobby78$2