Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
841 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  mb_ereg_replace ajouter l'icône PDF

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

mb_ereg_replace ajouter l'icône PDF

n°2112372
naeco
Buddy Rich Big Band
Posté le 18-11-2011 à 22:49:41  profilanswer
 

Bonjour à tous,
 
Je voudrais scanner les URL d'un string UTF8, et ceux qui pointent vers un PDF, ajouter une petit icône PDF ( une icone ZIP pour les ZIP, et une icône extérieur pour les autres).
 
Pour ça, j'ai écris ces expressions régulière :

Code :
  1. //ajout de l'icône PDF pour les PDF :
  2. $contenuARetraiter = mb_ereg_replace ('(<a href=" )(.*)(\.pdf"> ){1}(.*)(</a> )', '\1\2\3\4\5 <img src="images/pdf.gif"/>', $contenuARetraiter);
  3. //ajout de l'icône ZIP pour les ZIP :
  4. $contenuARetraiter = mb_ereg_replace ('(<a href=" )(.*)(\.zip"> )(.*)(</a> )', '\1\2\3\4\5 <img src="images/icone_zip.gif"/>', $contenuARetraiter);


 
Mais ça se comporte bizzarement.
J'ai mis dans le string la chaine suivante :
 

Code :
  1. <a href="http://127.0.0.1/myca/test/article_print.ajax.php">http://127.0.0.1/myca/test/article_print.ajax.php</a>
  2. <a href="http://127.0.0.1/myca/test/article_print.ajax.pdf">http://127.0.0.1/myca/test/article_print.ajax.pdf</a>
  3. <a href="http://127.0.0.1/myca/test/article_print.ajax.zip">http://127.0.0.1/myca/test/article_print.ajax.zip</a>
  4. <a href="http://127.0.0.1/myca/test/article_print.ajax.pdf">http://127.0.0.1/myca/test/article_print.ajax.pdf</a>


 
et l'application du code ci-dessus donne ça en retour :

Code :
  1. <a href="http://127.0.0.1/myca/test/article_print.ajax.php">http://127.0.0.1/myca/test/article_print.ajax.php</a>
  2. <a href="http://127.0.0.1/myca/test/article_print.ajax.pdf">http://127.0.0.1/myca/test/article_print.ajax.pdf</a>
  3. <a href="http://127.0.0.1/myca/test/article_print.ajax.zip">http://127.0.0.1/myca/test/article_print.ajax.zip</a>
  4. <a href="http://127.0.0.1/myca/test/article_print.ajax.pdf">http://127.0.0.1/myca/test/article_print.ajax.pdf</a> <img src="images/icone_zip.gif"> <img src="images/pdf.gif">


 
Il y a quelque chose qui l'empêche de capturer le 1er PDF. Je pense que l'expression régulière trouve le début du <a href de la première ligne, et le pdf de la quatrième.
 
Vous auriez une idée de comment lui faire comprendre ?

mood
Publicité
Posté le 18-11-2011 à 22:49:41  profilanswer
 

n°2112423
naeco
Buddy Rich Big Band
Posté le 19-11-2011 à 21:14:08  profilanswer
 

Le plus rigolo, c'est que si je tente ça :
 

Code :
  1. $contenuARetraiter = preg_replace ('/(<a href=" )(.*)(\.pdf"> ){1}(.*)(<\/a> )/', '\\0 <img src="images/pdf.gif"/>', $contenuARetraiter);


 
il me trouve une seule URL avec un PDF alors qu'il y en a plusieurs, mais si je met ça :
 

Code :
  1. $contenuARetraiter = preg_replace ('/(<a href=" )([\w\.\/\-]*)(\.pdf"> ){1}(.*)(<\/a> )/', '\\0 <img src="images/pdf.gif"/>', $contenuARetraiter);


 
il met pas d’icône du tout !
 
et ça autant avec preg_replace que mb_ereg_replace
 
Il y a un truc que j'ai pas dû comprendre !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  mb_ereg_replace ajouter l'icône PDF

 

Sujets relatifs
comment ajouter un favicon dans un site en FlashOpensearch : comment ajouter un mot clé ?
sqlite : replace sur champproblème pour ajouter un nombre à une variable (heure UTC et CEST)
Help Me !! VBA 2007 impression et ouverture automatique de PDFInsestion d'une image.Pdf dans un document (pdf ou word) | en FO
Ajouter un flashcode à ses supports[Resolu] Regex : Variable et incrementation dans le replace
[Resolu][Qt] maximiser la taille d'une icone sur un boutonajouter 1 mois à une variable date
Plus de sujets relatifs à : mb_ereg_replace ajouter l'icône PDF


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR