1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| <?php
// Nom de la table à décrire
$table_name = 'glpi_docs';
try
{
// Connexion à la base de données
$db = new PDO('mysql:host=localhost;dbname=glpidb', 'root', '');
// Configuration du pilote : nous voulons des exceptions
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Préparation de la requête SQL
$sql = sprintf('DESCRIBE %s', $table_name);
$sth = $db->prepare($sql);
$sth->execute();
$result = $sth->fetchAll(PDO::FETCH_ASSOC);
echo("<pre>"); // Pre pour garder le formattage texte (et non html)
// Le tableau généré contient autant d'élements que de champs (tabelau d'index)
// On itère donc sur l'ensemble des élément du tableau
for($i=0;$i<count($result);$i++) {
// Indexe du tabelau
printf("Champ N°%s\n", $i+1);
// Chaque élément contient un talbeau associatif constitué des clés:
// Field, Type, Null, Key, Default, Extra
printf("\tNom du champ : %s\n", $result[$i]['Field']);
printf("\tType du champ : %s\n", $result[$i]['Type']);
printf("\tNull : %s\n", $result[$i]['Null']);
printf("\tType de clé : %s\n", $result[$i]['Key']);
printf("\tValeur par défaut : %s\n", $result[$i]['Default']);
printf("\tExtra : %s\n", $result[$i]['Extra']);
print("############################################\n\n");
}
echo("</pre>");
}
catch(Exception $e)
{
echo "Échec : " . $e->getMessage();
}
?> |
Partager