/** * Unregister an alias * * @param Model $objModel The model object * @param string $strAlias The alias name * @param mixed $varValue The value of the alias * * @throws \InvalidArgumentException If the alias is not registered */ public function unregisterAlias(Model $objModel, $strAlias, $varValue) { $strTable = $objModel->getTable(); if (!isset($this->arrAliases[$strTable][$strAlias][$varValue])) { $strPk = $objModel->getPk(); $varPk = $objModel->{$strPk}; throw new \RuntimeException("The registry does not contain an alias for {$strTable}::{$strPk}({$varPk}) ({$strAlias}/{$varValue})"); } unset($this->arrAliases[$strTable][$strAlias][$varValue]); }