Transformer du texte en lien html

Soyez le premier à donner votre avis sur cette source.

Snippet vu 11 573 fois - Téléchargée 27 fois

Contenu du snippet

Voici une fonction qui est en fait la compilation de 3 sources trouvées ci et là.

Elle permet de transfomer tout http, www, ftp, en fait n'importe quoi au format xxx://xxx en lien html, de même que tout mail, même s'il comprend des points et des tirets.

Source / Exemple :


<?php
function lienhtml($message)
{
 global $message;
 
 $message = eregi_replace (":alpha:+://www", "www",$message);
 
 $message = ereg_replace (":alpha:+://[^<>[:space:]]+[[:alnum:]/](\.[a-z0-9-]{2,4})+", "<a href=\\0 target=_blank>\\0</a>", $message);
 $message = ereg_replace ("www.[^<>[:space:]]+[[:alnum:]/](\.[a-z0-9-]{2,4})+", "<a href=http://\\0 target=_blank>\\0</a>", $message);
 $message = ereg_replace ('[_a-zA-z0-9\-]+(\.[_a-zA-z0-9\-]+)*\@' . '[_a-zA-z0-9\-]+(\.[a-zA-z]{1,3})+', '<a href="mailto:\\0">\\0</a>', $message);
 
 return $message;
} 
?>

A voir également

Ajouter un commentaire

Commentaires

cs_Pill_S
Messages postés
3
Date d'inscription
dimanche 3 octobre 2004
Statut
Membre
Dernière intervention
28 janvier 2005
-
Hello,

merci pour ton code, qui fonctionne pas trop mal... j'ai juste un problème, c'est que si le lien contient des '/' après le nom de domaine (par exemple http://domain.com/index.php) et bien la partie qui suit le slash n'est plus contenue dans le lien (donc index.php)....

Aurais-tu une petite mise à jour pour supprimer ce problème ? ;-)

Merci !
JulioDelphi
Messages postés
2349
Date d'inscription
dimanche 5 octobre 2003
Statut
Modérateur
Dernière intervention
18 novembre 2010
12 -
et voici une belle source :
http://fr2.php.net/manual/fr/function.eregi-replace.php
magnifique ! qui me mets 10/10 ?

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.