(PHP 5, PHP 7, PHP 8, PECL OCI8 >= 1.1.0)
oci_field_precision — Lit la précision d'un champ Oracle
$statement, string|int $column): int|false
   Retourne la précision du champ column.
  
   Pour les colonnes de type FLOAT, la précision et non nulle, et
   l'échelle est de -127. Si la précision est 0, alors la colonne
   est de type NUMBER. Sinon, elle est de type NUMBER(precision, scale).
  
statementUn identifiant de requête OCI valide.
columnPeut être un index de champ (en commençant à 1) ou un nom de champ.
   Retourne la précision, sous la forme d'un entier, ou false si une erreur survient
  
Exemple #1 Exemple avec oci_field_precision()
<?php
// Création de la table avec :
//   CREATE TABLE mytab (c1 NUMBER, c2 FLOAT, c3 NUMBER(4), c4 NUMBER(5,3));
$conn = oci_connect("hr", "hrpwd", "localhost/XE");
if (!$conn) {
    $m = oci_error();
    trigger_error(htmlentities($m['message']), E_USER_ERROR);
}
$stid = oci_parse($conn, "SELECT * FROM mytab");
oci_execute($stid, OCI_DESCRIBE_ONLY); // Utilisation de  OCI_DESCRIBE_ONLY si aucune ligne n'est récupérée
$ncols = oci_num_fields($stid);
for ($i = 1; $i <= $ncols; $i++) {
    echo oci_field_name($stid, $i) . " " 
        . oci_field_precision($stid, $i) . " " 
        . oci_field_scale($stid, $i) . "<br>\n";
}
// Affiche :
//   C1    0 -127
//   C2  126 -127
//   C3    4    0
//   C4    5    3
oci_free_statement($stid);
oci_close($conn);
?>