oci_fetch

(PHP 5, PHP 7, PHP 8, PECL OCI8 >= 1.1.0)

oci_fetchLit la prochaine ligne d'un résultat Oracle dans un buffer interne

Description

oci_fetch(resource $statement): bool

Lit la prochaine ligne d'une requête dans un buffer interne accessible soit via la fonction oci_result(), soit en utilisant les variables précédemment définies avec la fonction oci_define_by_name().

Voir la fonction oci_fetch_array() pour des informations génériques sur la récupération de données.

Liste de paramètres

statement

Un identifiant de requête OCI8 créé par la fonction oci_parse() et exécuté par la fonction oci_execute(), ou un identifiant de requête REF CURSOR.

Valeurs de retour

Retourne true en cas de succès, ou false s'il n'y a plus de lignes de disponible pour la requête statement.

Exemples

Exemple #1 Exemple avec oci_fetch() avec des variables définies

<?php

$conn 
oci_connect('hr''welcome''localhost/XE');
if (!
$conn) {
    
$e oci_error();
    
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$sql 'SELECT location_id, city FROM locations WHERE location_id < 1200';
$stid oci_parse($conn$sql);

// La définition doit s'effectuer AVANT l'exécution
oci_define_by_name($stid'LOCATION_ID'$locid);
oci_define_by_name($stid'CITY'$city);

oci_execute($stid);

// Chaque récupération utilise les variables précédemment définies avec les données de la prochaine ligne
while (oci_fetch($stid)) {
    echo 
"Location id $locid is $city<br>\n";
}

// Affiche :
//   Location id 1000 is Roma
//   Location id 1100 is Venice

oci_free_statement($stid);
oci_close($conn);

?>

Exemple #2 Exemple avec oci_fetch() et oci_result()

<?php

$conn 
oci_connect('hr''welcome''localhost/XE');
if (!
$conn) {
    
$e oci_error();
    
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$sql 'SELECT location_id, city FROM locations WHERE location_id < 1200';
$stid oci_parse($conn$sql);
oci_execute($stid);

while (
oci_fetch($stid)) {
    echo 
oci_result($stid'LOCATION_ID') . " is ";
    echo 
oci_result($stid'CITY') . "<br>\n";
}

// Affiche :
//   1000 is Roma
//   1100 is Venice

oci_free_statement($stid);
oci_close($conn);

?>

Notes

Note:

Cette fonction ne retournera pas de lignes depuis le jeu de résultats implicite depuis une base de données Oracle. Utilisez plutôt la fonction oci_fetch_array().

Voir aussi

  • oci_define_by_name() - Associe une variable PHP avec une colonne pour une requête de récupération de données
  • oci_fetch_all() - Lit plusieurs lignes d'un résultat dans un tableau multidimensionnel
  • oci_fetch_array() - Lit une ligne d'un résultat sous forme de tableau associatif ou numérique
  • oci_fetch_assoc() - Lit une ligne d'un résultat sous forme de tableau associatif
  • oci_fetch_object() - Lit une ligne d'un résultat sous forme d'objet
  • oci_fetch_row() - Lit la prochaine ligne d'une requête sous forme de tableau numérique
  • oci_result() - Retourne la valeur d'une colonne dans un résultat Oracle