ste Posté 9 Janvier 2006 Partager Posté 9 Janvier 2006 kikooo all j'ai un flux xhtml, auquel je cherche à détecter tous les liens pour leur appliquer un zeste de functions avant de les réinjecter dans le flux. mon code : function recodeURL($html) { preg_match_all('!href="(.+)"!isU', $str, $href); $this->xploz = explode('"', $href[0][1]); /*** traitement url ***/ $url = parse_url($this->xploz[1]); if( !empty($url['user']) && !empty($url['password']) ) $url['xhtml2pdf']['user_pass'] = $url['user'].':'.$url['password'].'@'; else $url['xhtml2pdf']['user_pass'] = ''; $url['xhtml2pdf']['href'] = $url['scheme'].'://'.$url['xhtml2pdf']['user_pass'].$url['host']; if( !empty($url['path']) ) $url['xhtml2pdf']['href'] = $url['xhtml2pdf']['href'].$url['path']; if( !empty($url['query']) ) $url['xhtml2pdf']['href'] = $url['xhtml2pdf']['href'].'?'.urlencode($url['query']); if( !empty($url['fragment']) ) $url['xhtml2pdf']['href'] = $url['xhtml2pdf']['href'].'#'.$url['fragment']; /*** pattern ***/ $search = '!href="(.+)"!isU'; $replace = 'href="'.$url['xhtml2pdf']['href'].'"'; $str = preg_replace($search, $replace, $str); return($str); unset($href, $url, $search, $replace); } sauf que dans l'état, la méthode prend la valeur de l'attribut href et la restitue à l'ensemble des liens qui peut exister dans mon flux html... au lieu d'appliquer celle qui correspond à son lien ! J'ai certainement loupé quelque chose ... mais quoi ?! Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant