Bonjour,
Je tente de remplacer des liens présent dans un texte (variable) pour leurs attribuer un "nofollow" sous condition que l'url ne soit pas celle de mon domaine ou de mon sous-domaine.
En supprimant la condition
tout fonctionne comme je le souhaite.
Pourquoi la seconde condition "fou le bordel" et comment y remédier svp?
Merci
Je tente de remplacer des liens présent dans un texte (variable) pour leurs attribuer un "nofollow" sous condition que l'url ne soit pas celle de mon domaine ou de mon sous-domaine.
Code:
<?php
//Mon texte
$chaine = 'Ici mon texte avec quelques liens.';
//on créé un masque
$motif='#<a href="(.*?)"(.*?)>#is';
//on cherche les urls
preg_match_all($motif,$chaine,$out,PREG_PATTERN_ORDER);
//on boucle pour sortir toutes les url de $chaine
foreach ($out[1] as $link) {
//on parse chaque url pour trouver le host
$aze = parse_url($link);
//si le host est différent, on remplace
if($aze[host]!="mon-domaine.fr" OR $aze[host]!="sousdomaine.mon-domaine.fr"){
$chaine=str_replace('<a href="'.$link.'','<a rel="nofollow" href="'.$link.'',$chaine);
}
}
echo $chaine;
?>
En supprimant la condition
Code:
OR $aze[host]!="http://sousdomaine.mon-domaine.fr"
Pourquoi la seconde condition "fou le bordel" et comment y remédier svp?
Merci