par
jojolapine » 27 août 2006, 13:43
Bon je reviens avec des problèmes de regex...
Je suis en train de me faire une fonction de redimensionnement d'image en php, j'ai déja fait la fonction qui redimensionne, la voilà:
function redim($photo,$largeur,$hauteur)
{
$width = $largeur;
$height = $hauteur;
header('Content-type: image/jpeg');
list($width_orig, $height_orig) = getimagesize($photo);
if ($width && ($width_orig < $height_orig)) {
$width = ($height / $height_orig) * $width_orig;
} else {
$height = ($width / $width_orig) * $height_orig;
}
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($photo);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
imagejpeg($image_p, null, 100);
}
Ce qui me pose problème, c'est la fonction de "parsage" (comment ça ? c'est pas du français?):
je voudrait que les images ayant pour classe quelquechose de similaire à ceci:
class="redim_400_200"
soient remplacer par l'image redimensionnée, voici le début de ma fonction:
function parser_photo($texte){
$texte = preg_replace_callback('#<img.*class="redim_([0-9]*)_([0-9]*)".*/>#U','redim',$texte);
}
seulement je vois bien que cette fonction de fait pas l'affaire...
Parce qu'il faudrait remplacer la partie src de la balise, bref je sais aps trop comment m'y prendre...

merci d'avance
Bon je reviens avec des problèmes de regex...
Je suis en train de me faire une fonction de redimensionnement d'image en php, j'ai déja fait la fonction qui redimensionne, la voilà:
[php]function redim($photo,$largeur,$hauteur)
{
$width = $largeur;
$height = $hauteur;
header('Content-type: image/jpeg');
list($width_orig, $height_orig) = getimagesize($photo);
if ($width && ($width_orig < $height_orig)) {
$width = ($height / $height_orig) * $width_orig;
} else {
$height = ($width / $width_orig) * $height_orig;
}
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($photo);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
imagejpeg($image_p, null, 100);
}[/php]
Ce qui me pose problème, c'est la fonction de "parsage" (comment ça ? c'est pas du français?):
je voudrait que les images ayant pour classe quelquechose de similaire à ceci:
class="redim_400_200"
soient remplacer par l'image redimensionnée, voici le début de ma fonction:
[php]function parser_photo($texte){
$texte = preg_replace_callback('#<img.*class="redim_([0-9]*)_([0-9]*)".*/>#U','redim',$texte);
}[/php]
seulement je vois bien que cette fonction de fait pas l'affaire...
Parce qu'il faudrait remplacer la partie src de la balise, bref je sais aps trop comment m'y prendre... :-(
merci d'avance