mit PHP "<br>" in "\n" konvertieren

Dieses Thema mit PHP "<br>" in "\n" konvertieren im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von Michael_B, 20. Jan. 2003.

Thema: mit PHP "<br>" in "\n" konvertieren Hallöchen. Habe mal wieder ein kleines Problem mit PHP. Ich möchte Texte, die aus der Datenbank kommen geringfügig...

  1. Hallöchen.

    Habe mal wieder ein kleines Problem mit PHP. Ich möchte Texte, die aus der Datenbank kommen geringfügig verändern. In den Texten kommen &lt;br>'s vor (die auch schon so in der DB gespeichert sind). Diese Texte möchte ich nun in eine Textarea einfügen, aber so, dass die &lt;br>'s nicht erscheinen, sondern dafür ein \n (also einen ganz normalen Zeilenumbruch) verwendet wird.

    Ich habe es bereits mit str_replace(&lt;br>,\n,$text) versucht, aber dann verhunzt es mir den kompletten Text.

    Kennt da jemand eine bessere Möglichkeit, das zu realisieren?
     
  2. GANZ EINFACH! ;)

    Es gibt bereits dafür eine Funktion in php.

    Zuerst wie du es am besten machen solltest:

    nl2br()

    mach einfach folgendes:
    Speicher in die DB das Textfeld, ganz normal, mit normalen Zeilenumbrüchen. Wenn du dann diesen Text wieder als html einfügen willst einfach vorher in eine variable speichern und dann
    $meinevariable = nl2br($meinevariable);

    Wennn du unbedingt die br's in der DB behalten willst, dann wüsste ich jetzt auch nicht genau wie das gehen sollte, würde es dann auch mit replace machen.
    Leider gibt es nähmlich keine Funktion, die das Rückwarts macht.

    Gruß,
    Eike Thies
    www.eikaramba.de

    Ich muss mich mal anmelden... ;)
     
  3. Das hatte ich auch schon überlegt. Ist nur dumm, dass die DB bereits besteht und möglichst auch so bestehen bleiben sollte. Muss mal meinen Cheffe fragen, ob ich da wat ändern darf.

    Mir fällt aber gerade was zu meiner Strategie mit str_replace(&lt;br>,\n,$text) ein. Vielleicht sollte ich es mal mit \\n versuchen, also str_replace(&lt;br>,\\n,$text)

    Muss ich morgen mal ausprobieren. Vielleicht liegt da ja der Hund begraben... Trotzdem danke schonmal für deine Hilfe.
     
  4. Hi

    Deine letzte Idee dürfte nicht funktionieren.
    Liegt es vielleicht daran, dass in der DB &lt;br> gross geschrieben ist?
    str_replace kann das glaube nicht ignorieren.
    dann müsstest du preg_replace() nehmen.

    Gruß, Michael
     
  5. Also das &lt;br> ist nicht groß geschrieben.
    Habe es auch schon mit der preg_replace versucht, aber - wie du wohl bereits von mir wissen müsstest - stelle ich mich in diesem Thema etwas blöd an.
    Habe folgendes ausprobiert:

    Als Beispiel-Text habe ich diesen genommen:
    Wir suchen eine/n Konstrukteur/in für die Entwicklung elektromechanischer Laborgeräte. Ihre Aufgaben umfassen selbständiges Umsetzen von Konzeptideen und CAD gestützte Konstruktion.&lt;br>
    &lt;br>
    Sie haben Erfahrung mit 3D-CAD Systemen und langjährige Konstruktionserfahrung in der Feinwerktechnik. Voraussetzung für diese Position ist ein Abschluss an der FH oder TU als Dipl. Ingenieur Maschinenbau.&lt;br>
    &lt;br>
    Für diese Position sind gute Englischkenntnisse von Vorteil.


    Aussehen soll der Text am Ende so:
    Wir suchen eine/n Konstrukteur/in für die Entwicklung elektromechanischer Laborgeräte. Ihre Aufgaben umfassen selbständiges Umsetzen von Konzeptideen und CAD gestützte Konstruktion.

    Sie haben Erfahrung mit 3D-CAD Systemen und langjährige Konstruktionserfahrung in der Feinwerktechnik. Voraussetzung für diese Position ist ein Abschluss an der FH oder TU als Dipl. Ingenieur Maschinenbau.

    Für diese Position sind gute Englischkenntnisse von Vorteil.


    preg_replace(&lt;br>,\n,$text) lieferte mir dann aber das hier:
    Wir suchen eine/n Konstrukteur/in für die Entwicklung elektromechanischer Laborgeräte. Ihre Aufgaben umfassen selbständiges Umsetzen von Konzeptideen und CAD gestützte Konstruktion.&lt;
    >
    &lt;
    >
    Sie haben Erfahrung mit 3D-CAD Systemen und langjährige Konstruktionserfahrung in der Feinwerktechnik. Voraussetzung für diese Position ist ein Abschluss an der FH oder TU als Dipl. Ingenieur Maschinenbau.&lt;
    >
    &lt;
    >
    Für diese Position sind gute Englischkenntnisse von Vorteil.


    preg_replace(/&lt;br>/,\n,$text) kam der Sache schon etwas näher:
    Wir suchen eine/n Konstrukteur/in für die Entwicklung elektromechanischer Laborgeräte. Ihre Aufgaben umfassen selbständiges Umsetzen von Konzeptideen und CAD gestützte Konstruktion.



    Sie haben Erfahrung mit 3D-CAD Systemen und langjährige Konstruktionserfahrung in der Feinwerktechnik. Voraussetzung für diese Position ist ein Abschluss an der FH oder TU als Dipl. Ingenieur Maschinenbau.



    Für diese Position sind gute Englischkenntnisse von Vorteil.


    Aber das sind leider zu viele Zeilenumbrüche!! Habe auch überlegt, ob es an fehlenden Flags liegt, aber bei selfphp in der Funktionsübersicht waren Flags (zumindest als Übergabeparameter an die Funktion preg_replace nicht vorgesehen.
    Wahrscheinlich ist es nur ein kleiner Furzfehler... Aber was daran denn jetzt falsch ist würde mich schon interessieren.
     
  6. $text = ereg_replace(\n,,$text);
    echo ereg_replace(&lt;br>,\n,$text);
     
  7. Hi

    Die Daten in deiner Datenbank enthalten sowohl die <br> als auch die Zeilenumbrüche, sollte jedes <br> immer in einer neuen Zeile stehen. Andernfalls wären deine Daten inkonsistent und man könnte keine generelle Regel erstellen.

    du musst dann das <br> durch nichts ersetzen, wie JanaS geschrieben hat.

    in PCRE wäre das dann preg_replace(|\<br.*?\>|i, , $text) wenn man davon ausgeht das auch <br /> als xhtml konform vorkommen kann.

    Gruß, Michael
     
  8. hallo,

    also wie kann ich task scheduler anweisen firefox im hintergrund laufen zu lassen?! weil habe imacros plugin installiert und der task scheduler startet firefox und den macro aber leider immer im vordergrund was mich so langsam nervt weil der zeitintervall auf jede halbe stunde gesetzt ist.

    also gibt es eine funktion den browser im hintergrund laufen zu alssen? bzw. er kann ja von mir aus den browser öffnen und starten wie jetzt nur wenn ich was schreibe (e-mail, im forum, oder ich lese eine internet seite und habe um die 20 tabs offen) will ich auf der seite bleiben und nicht das der task scheduler ein neues fenster aufmacht und ich dann wieder durchsuchen muss wo ich letztens stehen geblieben bin...
     
Die Seite wird geladen...

mit PHP "<br>" in "\n" konvertieren - Ähnliche Themen

Forum Datum
nl2br in HTML-valides <br> statt <br /> möglich? Webentwicklung, Hosting & Programmierung 18. Juni 2007
Partition konvertieren mit CONVERT Windows 7 Forum 19. Nov. 2014
Videos von Myvideo downloaden / konvertieren Software: Empfehlungen, Gesuche & Problemlösungen 5. Okt. 2013
Video Converter mit dem man in FLV, F4V oder SWF konvertieren kann Audio, Video und Brennen 31. Jan. 2013
pdf Datei Seitengröße und Schriftgröße verändern... oder konvertieren... Software: Empfehlungen, Gesuche & Problemlösungen 29. Dez. 2012