2011-07-28 5 views
1

J'ai besoin de construire une classe PHP qui me permet de récupérer les noms de toutes les colonnes d'une certaine base de données MySQL.PHP get MySQL Columns

Supposons que j'eu l'strucutre suivante:

| ID | Nom | Nom | Âge | Sexe |

Mon script doit fournir un tableau comme:

0 => ID 
1 => Name 
2 => Surname 
3 => Age 
4 => Sex 

Idées? :)

Répondre

4
$result = mysql_query("SHOW COLUMNS FROM sometable"); 
print_r($result); 
3

Utilisez

DESCRIBE TableName 

ou

SHOW COLUMNS FROM TableName 
1

Vous pouvez utiliser la INFORMATION_SCHEMA COLUMNS table, par exemple (utilisant PDO):

$stmt = $pdo->prepare(' 
    SELECT 
     COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULT 
    FROM 
     INFORMATION_SCHEMA.COLUMNS 
    WHERE 
     table_name=:tablename 
     AND table_schema=:databasename 
'); 
$stmt->execute(array(':tablename'=>'foo', ':databasename'=>'bar'));