1.20.x database.inc | private DatabaseConnection_mysql::quoteIdentifier($identifier) |
Quotes an identifier if it matches a MySQL reserved keyword.
Parameters
string $identifier: The field to check.
Return value
string: The identifier, quoted if it matches a MySQL reserved keyword.
File
- drivers/
database_mysql/ database.inc, line 445 - Database interface code for MySQL database servers.
Class
Code
private function quoteIdentifier($identifier) {
// Quote identifiers so that MySQL reserved words like 'function' can be
// used as column names. Sometimes the 'table.column_name' format is passed
// in. For example, menu_load_links() adds a condition on "ml.menu_name".
if (strpos($identifier, '.') !== FALSE) {
list($table, $identifier) = explode('.', $identifier, 2);
}
if (in_array(strtolower($identifier), $this->reservedKeyWords, TRUE)) {
// Quote the string for MySQL reserved keywords.
$quote_char = variable_get('mysql_identifier_quote_character', MYSQL_IDENTIFIER_QUOTE_CHARACTER_DEFAULT);
$identifier = $quote_char . $identifier . $quote_char;
}
return isset($table) ? $table . '.' . $identifier : $identifier;
}