Ankündigung

Einklappen
Keine Ankündigung bisher.

Link Replace

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • thargor
    hat ein Thema erstellt Link Replace.

    Link Replace

    Hallo zusammen,
    hab mich gerade angemeldet und auch gleich mal ein erstes Problem

    Folgendes Problem:
    Ich habe einen Text mit Folgendem Inhalt:
    Dies ist ein schöner Text, mit einem <a href="TOLLER_LINK">Tollem Link</a> und noch einem weiteren <a href="LINK">Link</a>
    Ich muss jetzt alle Inhalte der a href ersetzen, sprich das zwischen den " " so das später Links mit http://www... rauskommt (diese stehen in einer DB)
    Dazu lese ich via
    PHP-Code:
    $pattern '@.*<a.*href="(.*)".*>[^</]*</a>.*@Ui';
    $string //Inhalt des Strings;
    preg_match_all($pattern$string$treffer); 
    Alle Inhalte der Links aus, und suche aus der Datenbank entsprechende URLs heraus.

    Sich hab dann ein Sucharray und ein Ersetzungsarray.

    Sucharray $find
    PHP-Code:
    [0] => /TOLLER_LINK/
    [
    1] => /LINK
    und Ersetzungsarray $new
    PHP-Code:
    [0] =>http://www.tollerlink.de
    [1] => http://www.link.de 
    Das ganze wird dann via echo preg_replace($find, $new, $string2) auf den String angewandt.
    Wie ersetze ich nun nur die href in den Anführungszeichen - hab schon diverse Versuche mit Regulären Ausdrücken unternommen, komme aber nicht weiter.

    Mit bestem Dank

    thargor

  • nikosch
    antwortet
    Eine Lösung ist:

    Dies ist ein schöner Text, mit einem <a href="TOLLER_LINK">Tollem Link</a> und ...

    Found:

    Found[0] <a href="TOLLER_LINK">Tollem Link</a>
    Found[1] TOLLER_LINK

    Ersetze jetzt Found[1] in Found[0] mit $new und speicher das ganze bspw. in Found[2]. Dann ersetzt Du textweit Found[0] durch Found[2].

    Dein Ersetyungsarray ist mir allerding etwas schleierhaft:
    Eigentlich müsste es die Schlüssel (Found[1]) als assoz. Keys verwenden.

    Einen Kommentar schreiben:


  • thargor
    antwortet
    Zitat von nikosch Beitrag anzeigen
    ? Ist das jetzt die Lösung oder was? Ich werde aus solchen Postings nicht schlau..
    Das war mehr versehentlich

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Nun ersetze ich via preg_replace
    ? Ist das jetzt die Lösung oder was? Ich werde aus solchen Postings nicht schlau..

    Einen Kommentar schreiben:

Lädt...
X