Example #1
0
 /**
  * Renvoie l'url rewritée complète.
  * Si l'id de la route à utiliser pour la base de l'url a déjà été défini par les méthodes
  * \Aouka\Project\Routing\UrlRewriter::setDefaultUrl() ou \Aouka\Project\Routing\UrlRewriter::setUrlId(),
  * c'est ce dernier id qui sera utilisé.
  * 
  * @param string $sRouteId Id de la route à utiliser pour rewriter l'url. Surcharge le précédent Id éventuel.
  * @param array $aParams Liste des paramètres associés à la route.
  * @return Url
  */
 public static function getUrl($sRouteId = '', $aParams = [])
 {
     $oSelf = new self();
     $cUriComponent = null;
     $aUriComponentsToRewrite = [];
     if ($sRouteId) {
         $oSelf->setRoute($sRouteId, $aParams);
         $cUriComponent = $oSelf->getComponentType($sRouteId);
         switch ($cUriComponent) {
             case self::URI_PATH:
                 $aUriComponentsToRewrite = [self::URI_BASEPATH, self::URI_PATH];
                 break;
             case self::URI_COMPLETE_PATH:
                 $aUriComponentsToRewrite = [self::URI_COMPLETE_PATH];
                 break;
         }
     }
     $oSelf->rewrite($aUriComponentsToRewrite);
     return $oSelf->get($cUriComponent);
 }