' durch \" mit str_replace() ersetzen
roland
- php
Hallo,
ich habe einen String in PHP, der dann per JavaScript in eine innerHTML gepostet wird. Beispiel für den Inhalt eines Strings <a href="#" onclick="open_options('dock');"></a>
nun möchte ich in PHP die " durch ' und die ' durch " ersetzen, damit das ganze dann so aussieht: <a href='#' onclick='open_options("dock");'></a> und meine Ausgabe im JS auch klappt. Wenn ich es nun so mache: $text=str_replace("'",""",$text); denkt PHP ja, dass ich einfach nur herkömmliche " escapen will, doch ich möchte doch gern wirklich " drin haben.
Hat jemand ne Lösung für dieses Problem?
Sonnige Grüße
Roland
hi,
Wenn ich es nun so mache: $text=str_replace("'",""",$text); denkt PHP ja, dass ich einfach nur herkömmliche " escapen will, doch ich möchte doch gern wirklich " drin haben.
Wenn du möchtest, dass der Backslash nicht mehr seine Bedeutung als Sonderzeichen hat, sondern ein normales Zeichen sein soll - dann escape diesen.
Ist hier aber auch nicht nötig, wenn du einfach '"' als zweiten Parameter nimmst.
(Und Strings, in denen gar nicht nach Variablennamen gesucht werden soll, in " einzufassen, ist sowieso unschön.)
gruß,
wahsaga
Danke euch beiden. Hab es nach Genies Methode gemacht.
Benutz folgendes:
\\\"
Die ersten zwei \ stehen für ein escapetes , das dritte \ und das " für ein escapetes ". Ausgegeben wird ", das ist für Javascript ein escapetes ".
mfg
Genie