Gets the schema definition of a table, or the whole database schema.
The returned schema will include any modifications made by any module that implements hook_schema_alter(). To get the schema without modifications, use drupal_get_schema_unprocessed().
$table: The name of the table. If not given, the schema of all tables is returned.
$rebuild: If true, the schema will be rebuilt instead of retrieved from the cache.
function drupal_get_schema($table = NULL, $rebuild = FALSE) {
static $schema;
if ($rebuild || !isset($table)) {
$schema = drupal_get_complete_schema($rebuild);
}
elseif (!isset($schema)) {
$schema = new SchemaCache();
}
if (!isset($table)) {
return $schema;
}
if (isset($schema[$table])) {
return $schema[$table];
}
else {
return FALSE;
}
}