src/Drivers/AbstractDriver.php
public function quoteIdent($identifier)
	{
		if (\is_array($identifier))
		{
			return array_map([$this, __METHOD__], $identifier);
		}

		// Handle comma-separated identifiers
		if (strpos($identifier, ',') !== FALSE)
		{
			$parts = array_map('mb_trim', explode(',', $identifier));
			$parts = array_map([$this, __METHOD__], $parts);
			$identifier = implode(',', $parts);
		}

		// Split each identifier by the period
		$hiers = explode('.', $identifier);
		$hiers = array_map('mb_trim', $hiers);

		// Re-compile the string
		$raw = implode('.', array_map([$this, '_quote'], $hiers));

		// Fix functions
		$funcs = [];
		preg_match_all("#{$this->escapeCharOpen}([a-zA-Z0-9_]+(\((.*?)\))){$this->escapeCharClose}#iu", $raw, $funcs, PREG_SET_ORDER);
		foreach($funcs as $f)
		{
			// Unquote the function
			$raw = str_replace($f[0], $f[1], $raw);

			// Quote the inside identifiers
			$raw = str_replace($f[3], $this->quoteIdent($f[3]), $raw);
		}

		return $raw;
	}
public function quoteIdent($identifier)
	{
		if (\is_array($identifier))
		{
			return array_map([$this, __METHOD__], $identifier);
		}

		// Handle comma-separated identifiers
		if (strpos($identifier, ',') !== FALSE)
		{
			$parts = array_map('mb_trim', explode(',', $identifier));
			$parts = array_map([$this, __METHOD__], $parts);
			$identifier = implode(',', $parts);
		}

		// Split each identifier by the period
		$hiers = explode('.', $identifier);
		$hiers = array_map('mb_trim', $hiers);

		// Re-compile the string
		$raw = implode('.', array_map([$this, '_quote'], $hiers));

		// Fix functions
		$funcs = [];
		preg_match_all("#{$this->escapeCharOpen}([a-zA-Z0-9_]+(\((.*?)\))){$this->escapeCharClose}#iu", $raw, $funcs, PREG_SET_ORDER);
		foreach($funcs as $f)
		{
			// Unquote the function
			$raw = str_replace($f[0], $f[1], $raw);

			// Quote the inside identifiers
			$raw = str_replace($f[3], $this->quoteIdent($f[3]), $raw);
		}

		return $raw;
	}
public function quoteIdent ( $ identifier ) { if ( \ is_array ( $ identifier ) ) { return array_map ( [ $ this , __METHOD__ ] , $ identifier ) ; } // Handle comma-separated identifiers if ( strpos ( $ identifier , ',' ) !== FALSE ) { $ parts = array_map ( 'mb_trim' , explode ( ',' , $ identifier ) ) ; $ parts = array_map ( [ $ this , __METHOD__ ] , $ parts ) ; $ identifier = implode ( ',' , $ parts ) ; } // Split each identifier by the period $ hiers = explode ( '.' , $ identifier ) ; $ hiers = array_map ( 'mb_trim' , $ hiers ) ; // Re-compile the string $ raw = implode ( '.' , array_map ( [ $ this , '_quote' ] , $ hiers ) ) ; // Fix functions $ funcs = [ ] ; preg_match_all ( "#{$this->escapeCharOpen}([a-zA-Z0-9_]+(\((.*?)\))){$this->escapeCharClose}#iu" , $ raw , $ funcs , PREG_SET_ORDER ) ; foreach ( $ funcs as $ f ) { // Unquote the function $ raw = str_replace ( $ f [ 0 ] , $ f [ 1 ] , $ raw ) ; // Quote the inside identifiers $ raw = str_replace ( $ f [ 3 ] , $ this -> quoteIdent ( $ f [ 3 ] ) , $ raw ) ; } return $ raw ; }
Surrounds the string with the databases identifier escape characters

@param mixed $identifier
@return string|array
Surrounds the string with the databases identifier escape characters