Neue Antwort schreiben 
 
Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
PHP Funktion Umschreiben
Gelöschter Beitrag von Michael_
DosAmp Offline
Anderes Zeigegerät

Beiträge: 12.217
Registriert seit: Jul 2008
Beitrag #21
RE: PHP Funktion Umschreiben
Wenn du jeden einzelnen Backslash nicht noch einmal verdoppeln willst, kannst du den String auch in einfache Anführungszeichen setzen. Dann musst du nur evtl. einfache Anführungszeichen per Backslash escapen.

Erinnerst du dich an #whfclassics? Es ist zurück! In Pog-Form.
09.04.2017 19:13
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Michael_ Offline
Bier aus Hawaii

Beiträge: 1.510
Registriert seit: Feb 2011
Beitrag #22
RE: PHP Funktion Umschreiben
Danke für die Antwort aber ich habs parallel nun auch im Web gefunden
http://www.usegroup.de/software/phptutor...rings.html

Zitat:Zwei Backslashes im String erzeugen ein sichtbares, drei erzeugen zwei usw..

Funktioniert nun und ich kann endlich weitermachen. :)
09.04.2017 19:33
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Michael_ Offline
Bier aus Hawaii

Beiträge: 1.510
Registriert seit: Feb 2011
Beitrag #23
RE: PHP Funktion Umschreiben
Ich hab jetzt wirklich sogut wie alles schon ersetzen können bzw. das script ist fast fertig.
ABER

Ich versuche
Code:
$post = str_replace("{".$this->hash."_".$mode."_".$varnr."}", "[".$mode."]".str_replace("\\\"", "\"", $code)."[/".$mode."]", $post);

Zu ersetzen.
Wenn ich nun

Code:
singlefilereplace_modern('$post = str_replace("{".$this->hash."_".$mode."_".$varnr."}", "[".$mode."]".str_replace("\\\\"", "\\"", $code)."[/".$mode."]", $post);', '$post = str_replace("{" . $this->hash . "_" . $mode . "_" . $varnr . "}", "[" . $mode . "]" .     $code . "[/" . $mode . "]", $post);', "../../acp/lib/class_parsecode.php");

ersetzt er nicht.
Wenn ich nun in der Datei

Code:
$post = str_replace("{".$this->hash."_".$mode."_".$varnr."}", "[".$mode."]".str_replace("\\\"", "\"", $code)."[/".$mode."]", $post);

durch

Code:
$post = str_replace("{".$this->hash."_".$mode."_".$varnr."}", "[".$mode."]".str_replace("a"", "b"", $code)."[/".$mode."]", $post);

funktioniert es so problemlos
Code:
singlefilereplace_modern('$post = str_replace("{".$this->hash."_".$mode."_".$varnr."}", "[".$mode."]".str_replace("a"", "b"", $code)."[/".$mode."]", $post);', '$post = str_replace("{" . $this->hash . "_" . $mode . "_" . $varnr . "}", "[" . $mode . "]" .     $code . "[/" . $mode . "]", $post);', "../../acp/lib/class_parsecode.php");

Die einzige änderung besteht darin das ich \\\\\ durch a und \\ durch b ersetzt habe.
Wo liegt das Problem?

Problem gelöst,
Code:
echo '$post = str_replace("{".$this->hash."_".$mode."_".$varnr."}", "[".$mode."]".str_replace("\\\\\"", "\"", $code)."[/".$mode."]", $post);';

echo hilft. :D
(Dieser Beitrag wurde zuletzt bearbeitet: 10.04.2017 01:28 von Michael_.)
10.04.2017 01:04
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Neue Antwort schreiben 


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste