Generate an alias from a string
public static generateAlias ( string $strString ) : string | ||
$strString | string | The string |
리턴 | string | The alias |
/** * @param $varValue * @param $dc * @return string * @throws \Exception */ public function generateAlias($varValue, $dc) { $autoAlias = false; $table = Input::get('table'); // create alias if no dca defined // registration module if ($dc === null) { $strValue = $varValue ? $varValue : ''; return $strValue; } // Generate alias if there is none if ($varValue == '') { $autoAlias = true; $varValue = StringUtil::generateAlias($dc->activeRecord->title); } $objAlias = $this->Database->prepare("SELECT id FROM " . $table . " WHERE alias = ?")->execute($varValue); // Check whether the alias exists if ($objAlias->numRows > 1 && !$autoAlias) { throw new \Exception(sprintf($GLOBALS['TL_LANG']['ERR']['aliasExists'], $varValue)); } // Add ID to alias if ($objAlias->numRows && $autoAlias) { $varValue .= '-' . $dc->id; } return $varValue; }
/** * Generate an alias from a string. * * @param string $strString The string. * * @return string The alias */ public static function generateAlias($strString) { if (self::isStringUtilAvailable()) { return StringUtil::generateAlias($strString); } return \Contao\String::generateAlias($strString); }