Hallo.
Ich habe einen String $content vorliegen, der letztlich ein großer Text ist, in dem zudem HTML-Tags vorkommen.
Ich möchte nun jedes <div class="gallery"> in diesem String zu einem <div class="gallery" id="gal[COLOR=firebrick]#[/COLOR]"> umformen. Das [COLOR=firebrick]#[/COLOR] soll dabei eine dynamische Ziffer sein.
Das heißt also, der erste <div class="gallery">-Tag, der in $content vorkommt, soll zu <div class="gallery" id="gal[COLOR=firebrick]1[/COLOR]"> werden, der zweite allerdings zu <div class="gallery" id="gal[COLOR=firebrick]2[/COLOR]">.
Bisher habe ich Folgendes "zu Papier" gebracht:
Ich denke, das ist soweit selbsterklärend. Kommentare sind ja auch vorhanden.
Das Ergebnis, das ich haben möchte, tritt leider nicht ein. (Sonst würde ich mich ja nicht an Euch wenden...
)
Alle <div class="gallery">-Tags werden leider in <div class="gallery" id="gal[COLOR=firebrick]1[/COLOR]"> umgeformt.
Ich hoffe, jemand kann mir erklären, woran es liegt. Ich denke, dass es wohl die while-Schleife ist, aber wie genau die Gründe liegen, da habe ich keine Ahnung.
Frohe Nachtgrüße, HCl
Ich habe einen String $content vorliegen, der letztlich ein großer Text ist, in dem zudem HTML-Tags vorkommen.
Ich möchte nun jedes <div class="gallery"> in diesem String zu einem <div class="gallery" id="gal[COLOR=firebrick]#[/COLOR]"> umformen. Das [COLOR=firebrick]#[/COLOR] soll dabei eine dynamische Ziffer sein.
Das heißt also, der erste <div class="gallery">-Tag, der in $content vorkommt, soll zu <div class="gallery" id="gal[COLOR=firebrick]1[/COLOR]"> werden, der zweite allerdings zu <div class="gallery" id="gal[COLOR=firebrick]2[/COLOR]">.
Bisher habe ich Folgendes "zu Papier" gebracht:
PHP-Code:
$i = 1; #ID-Zähler initialisieren
$pattern = "/<div(.*?)class=('|\")gallery('|\")>/i"; # Suchmaske
while ( preg_match($pattern2,$content) ) # solange Ergebnisse da sind
{
$replacement = "<div$1class=$2gallery$3 id=\"gal$i\">"; # Einsetzung
$content = preg_replace($pattern,$replacement,$content); #Ersetze Suchmaske mit Einsetzung!
$i++; # ID-Zähler hochsetzen
}
Das Ergebnis, das ich haben möchte, tritt leider nicht ein. (Sonst würde ich mich ja nicht an Euch wenden...
![Wink](https://www.php-resource.de/forum/core/images/smilies/wink.gif)
Alle <div class="gallery">-Tags werden leider in <div class="gallery" id="gal[COLOR=firebrick]1[/COLOR]"> umgeformt.
Ich hoffe, jemand kann mir erklären, woran es liegt. Ich denke, dass es wohl die while-Schleife ist, aber wie genau die Gründe liegen, da habe ich keine Ahnung.
Frohe Nachtgrüße, HCl
Kommentar