Ich hab folgendes Problem:
Ich hab hier Bilder in einem Text. Nun ist so, dass der Text in einer Tabelle steht, die eine bestimmte breite hat (in meinem Fall 439px).
Nun kanns ja sein, dass ein Bild breiter als die 439 px ist. In dem Fall soll eine Funktion bzw. Schleife alle Bilder prüfen ob sie größer sind und ggf. verkleinern.
Das Problem das ich nun hab liegt darin, dass ich ich zwar immer das erst Bild verkleinert bekomm, ich aber nicht weiß wie ich PHP sagen kann, dass es zum nächsten soll...
Kann mir dabei mal einer bitte helfen?
Steh irgendwie auf dem Schlauch... Danke schonmal!
Hier mal der Code. Bitte nicht beschweren darüber, ist nur eben mal so hingeschrieben das überhaupt was funzt und ich die übersicht behalte.
Ich hab hier Bilder in einem Text. Nun ist so, dass der Text in einer Tabelle steht, die eine bestimmte breite hat (in meinem Fall 439px).
Nun kanns ja sein, dass ein Bild breiter als die 439 px ist. In dem Fall soll eine Funktion bzw. Schleife alle Bilder prüfen ob sie größer sind und ggf. verkleinern.
Das Problem das ich nun hab liegt darin, dass ich ich zwar immer das erst Bild verkleinert bekomm, ich aber nicht weiß wie ich PHP sagen kann, dass es zum nächsten soll...
Kann mir dabei mal einer bitte helfen?
Steh irgendwie auf dem Schlauch... Danke schonmal!
Hier mal der Code. Bitte nicht beschweren darüber, ist nur eben mal so hingeschrieben das überhaupt was funzt und ich die übersicht behalte.
Code:
//Zählt wieviele Bilder vorkommen echo $imganzahl = substr_count($ausgabe, "<img"); //Wird für jedes Bild ausgeführt for($i=0; $i<$imganzahl;$i++) { //Ermittelt den Bildnamen $imgstring = substr(strstr($ausgabe, '<img'), 10); $pos = strpos ($imgstring, " "); $imgstringneu = substr($imgstring, 0, $pos-1); $size = getimagesize($imgstringneu); //verringert ggf. die Bildgröße if($size[0] > 439) { $faktor = round($size[0] / 439,2); $size[0] = 439; $size[1] = round($size[1] / $faktor); } else { $size[0]= 100; $size[1]= 100; $mass = "%"; } //trägt die breite und höhe ein $ausgabe = str_replace("<?=".$imgstringneu."w?>",$size[0].$mass,$ausgabe); $ausgabe = str_replace("<?=".$imgstringneu."h?>",$size[1].$mass,$ausgabe); $ausgabe = str_replace("","",$ausgabe); }
Kommentar