1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| <?php
$preg = '/<img[^>]+src=([\'"])?([^\'">]+)(?(1)\1|[ >])/iU';
$img = 'truc.gif';
//$img = 'avec espace.gif';
//$img = 'avec%20%vrai%espace.gif';
$test = array(
"<img src=$img>",
"<img src=$img >",
"<img src=$img border=0>",
"<img src=\"$img\">",
"<img src=\"$img\" >",
"<img src=\"$img\" border=0>",
"<img src='$img'>",
"<img src='$img' >",
"<img src='$img' border=0>",
"<img alt='machin' src='$img' title='chouette' border=0>",
);
foreach($test as $texte) {
preg_match_all ($preg, $texte, $resultats, PREG_SET_ORDER);
echo htmlspecialchars($texte).' : <br><pre>';
$resultats = @array_map('htmlspecialchars',$resultats[0]);
@var_dump($resultats);
if (@$resultats[2] !== $img) {
echo "<b>ERREUR</b>";
}
//@var_dump($resultats[2]);
echo "</pre><hr>";
}
?> |