1.20.x schema.inc | protected DatabaseSchema::getPrefixInfo($table = 'default', $add_prefix = TRUE) |
Get information about the table name and schema from the prefix.
Parameters
Name of table to look prefix up for. Defaults to 'default' because thats: default key for prefix.
$add_prefix: Boolean that indicates whether the given table name should be prefixed.
Return value
A keyed array with information about the schema, table name and prefix.:
File
- includes/
database/ schema.inc, line 235 - Generic Database schema code.
Class
- DatabaseSchema
- Base class for database schema definitions.
Code
protected function getPrefixInfo($table = 'default', $add_prefix = TRUE) {
$info = array(
'schema' => $this->defaultSchema,
'prefix' => $this->connection->tablePrefix($table),
);
if ($add_prefix) {
$table = $info['prefix'] . $table;
}
// If the prefix contains a period in it, then that means the prefix also
// contains a schema reference in which case we will change the schema key
// to the value before the period in the prefix. Everything after the dot
// will be prefixed onto the front of the table.
if (($pos = strpos($table, '.')) !== FALSE) {
// Grab everything before the period.
$info['schema'] = substr($table, 0, $pos);
// Grab everything after the dot.
$info['table'] = substr($table, ++$pos);
}
else {
$info['table'] = $table;
}
return $info;
}