Bon j'ai trouvé l'erreur...
En faite le SRC etait entouré de double quote " et non pas de simple quote '
Comment puis je faire pour enregistrer dans ce même fichier les modifs ?
Code : Tout sélectionner
<?php
$source = @file_get_contents("monfichier.html");
$texte[1]="Blabla";
$texte[2]="Bloblo";
$texte[3]="Blibli";
srand((double)microtime()*1000000);
$i=floor(rand(1,count($texte)));
$nouveau_texte = preg_replace("!<img src='(.*?)' alt='(.?*)'!i","<img src='\\1' alt='".$texte[$i]."'",$source);
echo $nouveau_texte;
?> Code : Tout sélectionner
// Instruction 1
$fp = fopen ("compteur.txt", "r+");
// Instruction 2
$nb_visites = fgets ($fp, 11);
// Instruction 3
$nb_visites = $nb_visites + 1;
// Instruction 4
fseek ($fp, 0);
// Instruction 5
fputs ($fp, $nb_visites);
// Instrcution 6
fclose ($fp);
// Instrcution 7
echo 'Ce site compte '.$nb_visites.' visiteurs !';
$source=<<<TXT
texte<img src="image1.png" class="class1" /> texte texte <img id="id2" src='image2.png' /> texte texte <img src="image3.png" />
TXT
;
$texte[1]="Blabla";
$texte[2]="Bloblo";
$texte[3]="Blibli";
// si tu veux le même alt, choisi au hasard, dans chaque <img />
$i = rand(1, count($texte));
$nouveau_texte = preg_replace("#(<img.*?)(src=[^>]*)#si", "$1 alt=\"$texte[$i]\" $2", $source);
echo htmlentities($nouveau_texte),'<br />';
// si tu veux un alt différent dans chaque <img />
function mon_remplace_alt($captures){
global $texte;
$i = rand(1, count($texte));
$alt = ' alt="'.$texte[$i].'"';
return $captures[1].$alt.$captures[2];
}
$nouveau_texte = preg_replace_callback("#(<img.*?)(src=[^>]*)#si", "mon_remplace_alt", $source);
echo htmlentities($nouveau_texte);