Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP 8.x gibt mir Rätsel auf: Escape geht auch nicht mehr?

Einklappen

Neue Werbung 2019

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

  • m.hoeting
    hat ein Thema erstellt PHP 8.x gibt mir Rätsel auf: Escape geht auch nicht mehr?.

    PHP 8.x gibt mir Rätsel auf: Escape geht auch nicht mehr?

    Moin,

    ich habe ein " in meinem String, und das ergibt einen Fehler, weil das " als " gedeutet wird und somit den String beendet und danach natürlich alles falsch interpretiert wird.

    Eine Zeile wie
    PHP-Code:
    echo "<div style='color:red;'>Du musst ein " verwenden</div>\n"; 
    genügt da schon.
    Natürlich könnte ich &quot; nehmen, aber eigentlich fing es damit an:
    PHP-Code:
    echo "<div style="color:red;">bla bla bla...</div>\n"
    Die " habe ich erst mal in ' geändert, aber das müsste ich jetzt in sämtlichen PHP-Dateien machen.
    Es ist ja nicht nur bei style-Angaben. Sämtliche Attribute, die ich innerhalb einen Strings in Gänsefüßchen setzen will, erzeugen diesen Fehler.

    Muss ich da vorher irgendwas definieren/einstellen, damit " wieder funktioniert?

    VGM


    P.S. sämtliche \n in einem String werden nicht mehr als neue Zeile, sondern als n ausgegeben...

  • erc
    antwortet
    Zitat von m.hoeting Beitrag anzeigen
    Muss ich da vorher irgendwas definieren/einstellen, damit " wieder funktioniert?
    Was heißt wieder? Der von dir gepostete Code hat auch nicht mit älteren Versionen von PHP funktioniert.

    Einen Kommentar schreiben:


  • jspit
    antwortet
    Wenn es denn unbedingt sein muss mehrzeiliges HTML in PHP Skripten zu notieren sollte auf die Heredoc-Syntax oder Nowdoc-Syntax zurückgegriffen werden.

    PHP-Code:
    $blubb 'noch mehr bla';

    $html = <<<HTML
    <div style="color:red;">bla bla bla...$blubb.
     Du kannst beliebig viele " und ' verwenden</div>
    HTML;

    echo 
    $html
    Ausgabe:

    bla bla bla...noch mehr bla. Du kannst beliebig viele " und ' verwenden

    Macht sich auch sehr gut um längere SQL-Anweisungen zu notieren.

    Einen Kommentar schreiben:


  • Werner123
    antwortet
    Ich würde diese doppelten Anführungszeichen den Attributen von HTML überlassen und in PHP nur einfache Anführungszeichen verwenden.
    PHP-Code:
    echo '<div style="color:red;">bla bla bla...' $blubb .
    ' Du musst ein " verwenden</div>' PHP_EOL

    Einen Kommentar schreiben:


  • toosten
    antwortet
    So klappt es sogar hier im Forum, das die komplette Zeichenkette in Rot angezeigt wird.
    PHP-Code:
    echo "<div style='color:red;'>Du musst ein \" verwenden</div>\n"
    PHP-Code:
    echo "<div style=\"color:red;\">bla bla bla...</div>\n"

    Einen Kommentar schreiben:


  • CPCoder
    antwortet
    Ich glaube du solltest dich wirklich noch einmal intensiv mit den Grundlagen befassen.

    Einen Kommentar schreiben:


  • kaminbausatz
    antwortet
    Das ist kein Fehler.

    Einen Kommentar schreiben:

Lädt...
X