Remplacer [image.gif] dans par <img src="image.gif"> - PHP - Programmation
Marsh Posté le 06-10-2004 à 20:15:59
| Code : 
 | 
Marsh Posté le 06-10-2004 à 20:45:10
Je galère, je ne comprend pas ou intervient mon parametre $variable 
 
par exemple 
 
$var = 'Bonjour..... Insertion de l'image : [image.gif]'; 
 
je voudrai parser cette variable et remplacer la chaine entre crochets par : 
 
<img src="CHAINE">
Marsh Posté le 06-10-2004 à 20:45:58
| Code : 
 | 
Marsh Posté le 06-10-2004 à 21:37:15
désolé mais je n'arrive pas à le faire marcher, il essaie de m'include l'image [image.gif] et non image.gif
Marsh Posté le 06-10-2004 à 21:39:51
J'en suis la : 
 
| Citation : $txt = "[image.gif]";   | 
 
 
Ca me donne : <img src="[image.gif]"> 
 
Marsh Posté le 06-10-2004 à 21:41:27
ah oué  
 
 
$txt = preg_replace("/\[(\w+).gif\]/", "<img src=\"\\1\" />", $txt);
Marsh Posté le 06-10-2004 à 21:43:50
Merci à toi  
 
 
j'ai un peu de mal avec les expressions régulières !
Marsh Posté le 06-10-2004 à 21:45:16
Comment peut on généraliser ce script à toutes les extensions ? 
(ne pas détecter que les [***.gif] 
Merci beaucoup 
Marsh Posté le 06-10-2004 à 21:47:59
pas sur sur (pas la tete a ca), mais je dirais 
 
$txt = preg_replace("/\[(\w+).(gif|jpg|jpeg|png)\]/", "<img src=\"\\1\.\\2" />", $txt); 
 
tu rajoute les extensions que tu veux egalement
Marsh Posté le 06-10-2004 à 22:04:05
Ca yé je vous donne la bonne solution grâce à l'aide de chacal_one 
 
| Code : 
 | 
Marsh Posté le 06-10-2004 à 22:24:20
| echo preg_replace('/\[(\w+\.(?:gif|jpg|jpeg|png))]/', '<img src="\\1" alt="\\1" />', $txt); | 
 
Là, c'est parfait. 
Marsh Posté le 06-10-2004 à 22:28:31
| kalex a écrit : 
   | 
 
 
chipotteur  
   
 
Marsh Posté le 06-10-2004 à 22:31:05
ui  
 
Y a quand même 5 changements entre ta version et la mienne. 
Marsh Posté le 06-10-2004 à 22:34:41
| kalex a écrit : ui  | 
 
 
C'est pas la mienne ...c'est chacal one le responsable   
   
 
Marsh Posté le 06-10-2004 à 22:37:59
Et qui c'est qui a donné un code HTML tout pourri au départ ?  
 
Marsh Posté le 06-10-2004 à 22:39:07
| kalex a écrit : Et qui c'est qui a donné un code HTML tout pourri au départ ?  | 
 
  
 
Marsh Posté le 07-10-2004 à 16:29:28
Puisque il y a des pros des expressions régulières, j'aimerais bien la formule kabbalistique qui permet de remplacer un "http://XXXX" par <a href="http://XXXX">XXXX</a> 
 
Petite digression : il vaut mieux utiliser ereg ou preg ?
Marsh Posté le 07-10-2004 à 16:39:47
| Code : 
 | 
 
Voilà pour les liens. 
 
preg donne beaucoup plus de possibilités, mais c'est un peu plus lent.
Marsh Posté le 08-10-2004 à 11:46:06
preg_replace('/((?:http|https|ftp):\/\/)([^ \n\r<>]*)/i', '<a href="\\1\\2">\\2</a>', $txt); 
 
a quoi il sert le ^ celui la ? je suis pas sur de saisir ?
Marsh Posté le 08-10-2004 à 11:47:58
normalement c'est pour dire que ta chaine commence par http, https ou ftp
Marsh Posté le 06-10-2004 à 20:00:47
Je voudrai pouvoir saisir par exemple pour l'image image.gif
[image.gif]
Et que lors de l'affichage ce soit remplacé par le code HTML pour l'affichage de l'image.
<img src="image.gif">
Merci à tous
---------------
Comparez DVD Vierges, Graveurs de DVD et Boutiques en ligne