Remplace toute les URL par un lien en dur

Ajoute la balise HTML HREF à toute les urls d'une chaine. 5 exemples sont fournis dans le code.


Information sur les mises à jour

Dernière mise à jour :

27 Août 2019
fonctionnement du code vérifié

9 752  vues
Compatibilité du code
PHP 5, PHP 7 et PHP 8
  code classé dans   URL - Liens
  code source classé dans   URL - Liens
 
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
                    
<?php
/*------------------------------*/
/*
Titre : Remplace toute les URL par un lien en dur

Date édition : 21 Fev 2007
Date mise a jour : 27 Aout 2019

Rapport de la maj:
- fonctionnement du code vérifié
*/
/*------------------------------*/

$chaine = 'le site : http://www.mon-site1.com/fr/index.php
est maintenant en ligne avec le site :' .
' http://www.monsite2.com/index.php
et encore le site : http://monsite3.com
ou bien encore : http://www.monsite4.com/fr-en/index.php?var=414
et pour terminer : http://monsite5.com/index.php?var=414s_dd2&var2=f14
';
$out = preg_replace(
"#(http|https|ftp)://([[:alnum:]/\n+-=%&:_.~?]+[\#[:alnum:]+]*)#i",
"<a href=\"\\1://\\2\" target=\"_blank\">\\1://\\2</a>",$chaine);
?>
<?php
/*------------------------------*/
/*
Titre : Remplace toute les URL par un lien en dur

Date édition : 21 Fev 2007
Date mise a jour : 27 Aout 2019

Rapport de la maj:
- fonctionnement du code vérifié
*/
/*------------------------------*/

$chaine = 'le site : http://www.mon-site1.com/fr/index.php
est maintenant en ligne avec le site :' .
' http://www.monsite2.com/index.php
et encore le site : http://monsite3.com
ou bien encore : http://www.monsite4.com/fr-en/index.php?var=414
et pour terminer : http://monsite5.com/index.php?var=414s_dd2&var2=f14
';
$out = preg_replace(
"#(http|https|ftp)://([[:alnum:]/\n+-=%&:_.~?]+[\#[:alnum:]+]*)#i",
"<a href=\"\\1://\\2\" target=\"_blank\">\\1://\\2</a>",$chaine);
?>

Exemple :

 
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
                    
<?php
echo $out;

// imprime
/*
le site : <a href="http://www.mon-site1.com/fr/index.php">
http://www.mon-site1.com/fr/index.php</a>
est maintenant en ligne avec le site :
<a href="http://www.monsite2.com/index.php" target="_blank">
http://www.monsite2.com/index.php</a>
et encore le site : <a href="http://monsite3.com" target="_blank">
http://monsite3.com</a>
ou bien encore :
<a href="http://www.monsite4.com/fr-en/index.php?var=414">
http://www.monsite4.com/fr-en/index.php?var=414</a>
et pour terminer :
<a href="http://monsite5.com/index.php?var=414s_dd2&var2=f14">
http://monsite5.com/index.php?var=414s_dd2&var2=f14</a>
*/
?>
<?php
echo $out;

// imprime
/*
le site : <a href="http://www.mon-site1.com/fr/index.php">
http://www.mon-site1.com/fr/index.php</a>
est maintenant en ligne avec le site :
<a href="http://www.monsite2.com/index.php" target="_blank">
http://www.monsite2.com/index.php</a>
et encore le site : <a href="http://monsite3.com" target="_blank">
http://monsite3.com</a>
ou bien encore :
<a href="http://www.monsite4.com/fr-en/index.php?var=414">
http://www.monsite4.com/fr-en/index.php?var=414</a>
et pour terminer :
<a href="http://monsite5.com/index.php?var=414s_dd2&var2=f14">
http://monsite5.com/index.php?var=414s_dd2&var2=f14</a>
*/
?>

      Fonctions du code - Doc officielle PHP

   php.net  
Description
Versions PHP
    echo
Affiche une chaîne de caractères
PHP 4, 5, 7 et 8
    preg_replace
Rechercher et remplacer par expression rationnelle standard
PHP 4, 5, 7 et 8
Minimum 10 mots. Votre commentaire sera visible après validation.


 Autres snippets qui pourraient vous intéresser

PHP - Remplace les balises TABLE dans 1 chaine

Compatibilité : PHP 5, PHP 7, PHP 8

Remplace toute les balises HTML TABLE dans une chaine de caractères.

Vérifie l'existence d'1 lien dans une page cible

Compatibilité : PHP 5, PHP 7, PHP 8

Vérifie l'existence d''un lien sur une page cible, pouvant servir à un Web Crawler et vérifier vos Back Links.

* Requêtes exécutées avec Recherche Contextuelle

  21 Fév 2007

Information sur les mises à jour

Dernière mise à jour :

27 Août 2019
fonctionnement du code vérifié

9 752 Vues
Compatibilité du code
PHP 5, PHP 7, PHP 8