fonction url_cliquable si deux url dans le texte

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : fonction url_cliquable si deux url dans le texte

fonction url_cliquable si deux url dans le texte

par mmc26 » 21 déc. 2012, 21:42

Bonjour,

J'utilise la fonction ci-après qui marche bien si le texte contient une seule url. Avec deux url la fonction traite les deux url comme une seule et donc ça ne marche pas.

Comment l'améliorer ?
Merci pour votre aide.

Code : Tout sélectionner

function url_cliquable($string) { // le texte ou l on va rendre les email et les urls cliquables $in = array( '`((?:https?|ftp)://\\S+)(\\s|\\z)`', '`([[:alnum:]]([-_.]?[[:alnum:]])*@[[:alnum:]]([-_.]?[[:alnum:]])*\.([a-z]{2,4}))`', '`((?<!//)(www\.)\S+)(\s|\z)`' ); $out = array( '<a href="$1" target="_blank">$1</a>$2', '<a href="mailto:$1">$1</a>', '<a href="http://$1" target="_blank">$1</a>', ); return preg_replace($in, $out, $string); }