ich preg_replace
bin mit Sonderzeichen zu entkommen:
$tmpStr=preg_replace("/\?/", "\?", $tmpStr);
$tmpStr=preg_replace("/\#/", "\#", $tmpStr);
$tmpStr=preg_replace("/\^/", "\^", $tmpStr);
$tmpStr=preg_replace("/\&/", "\&", $tmpStr);
$tmpStr=preg_replace("/\*/", "\*", $tmpStr);
$tmpStr=preg_replace("/\(/", "\(", $tmpStr);
$tmpStr=preg_replace("/\)/", "\)", $tmpStr);
$tmpStr=preg_replace("/\//", "\/", $tmpStr);
Aber ich bin nicht in der Lage $
mit der gleichen Funktion zu entkommen:
$tmpStr=preg_replace("/\$/", "\$", $tmpStr);
Und auch, wenn ich die alle Räume über Anweisung erhalten ersetzt durch $
und $
wird nicht entkommen.
Wie entkomme ich das Dollarzeichen richtig?
Ich würde diese Antwort hilfreicher finden, wenn es die Gründe für die Verwendung von preg_quote anstelle von preg_replace gab. Es wäre auch schön zu wissen, warum der preg_replace-Ansatz nicht dazu diente, das Dollarzeichen zu umgehen. –
@RandallStewart "preg_quote statt preg_replace"? Diese beiden Funktionen sind nicht ersetzbar, Sie können nicht eine anstelle der anderen verwenden, Sie verwenden 'preg_quote', um Werte in regulären Ausdruckstrings (innerhalb von' preg_replace') zu entfernen. –