(PHP 5, PECL oci8:1.1-1.2.4)
oci_fetch_array — Lit une ligne d'un résultat Oracle sous forme de tableau
Retourne un tableau, qui correspond à la prochaine ligne du résultat.
Pour plus de détails sur le mapping des types de données effectué par le driver oci8, lisez les types de données supportés par le driver
Il faut mentionner ici que oci_fetch_array() n'est pas significativement plus lente que oci_fetch_row(), mais bien plus pratique.
Un identifiant de requête OCI valide.
Le paramètre optionnel mode peut être la combinaison des constantes suivantes :
Retourne un tableau avec des indices associatifs et numériques, ou FALSE s'il n'y a plus de ligne dans la requête statement .
Note: Cette fonction définit les champs NULL à la valeur PHP NULL.
Note: Oracle retourne tous les noms de champs en majuscules, et les noms des index du tableau résultant seront donc aussi en majuscules.
Exemple #1 Exemple avec oci_fetch_array() avec OCI_BOTH
<?php
$connection = oci_connect("apelsin", "kanistra");
$query = "SELECT id, name FROM fruits";
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
while ($row = oci_fetch_array ($statement, OCI_BOTH)) {
echo $row[0]." and ".$row['ID']." sont identiques<br>";
echo $row[1]." and ".$row['NAME']." sont identiques<br>";
}
?>
Exemple #2 Exemple avec oci_fetch_array() avec OCI_NUM
<?php
$connection = oci_connect("user", "password");
$query = "SELECT id, name, lob_field FROM fruits";
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
while ($row = oci_fetch_array ($statement, OCI_NUM)) {
echo $row[0]."<br>";
echo $row[1]."<br>";
echo $row[2]->read(100)."<br>"; //Affiche les 100 premiers bytes du LOB
}
?>
Exemple #3 Exemple avec oci_fetch_array() avec OCI_ASSOC
<?php
$connection = oci_connect("user", "password");
$query = "SELECT id, name, lob_field FROM fruits";
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
while ($row = oci_fetch_array ($statement, OCI_ASSOC)) {
echo $row['ID']."<br>";
echo $row['NAME']."<br>";
echo $row['LOB_FIELD']."<br>"; //Affiche "Object id #1"
}
?>
Exemple #4 Exemple avec oci_fetch_array() avec OCI_RETURN_LOBS
<?php
$connection = oci_connect("user", "password");
$query = "SELECT id, name, lob_field FROM fruits";
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
while ($row = oci_fetch_array ($statement, (OCI_NUM+OCI_RETURN_LOBS))) {
echo $row[0]."<br>";
echo $row[1]."<br>";
echo $row['LOB_FIELD']."<br>"; //Affiche le contenu du LOB
}
?>