← Back to team overview

sslug-teknik team mailing list archive

Re: PHP - Meget mærkelig fejl med str_replace

 

Carsten Skov wrote:
Så denne linie virker :
$buffer = str_replace("\x2B","\xC5","$buffer"); // Å

Men denne virker ikke :
$buffer =
str_replace("\x$char_to_be_replaced","\x$char_to_replace_with",$buffer);

Problemets kerne ligger i hvornår din escapesekvens bliver fortolket. Samme problem optræder også ofte i shellscripts, hvor man er nødt til at dobbelt-escape en gang i mellem.

Prøv med

$buffer=str_replace("\\x$char_to_be_replaced","\\x$char_to_replace_with",$buffer);

eller, hvis det går helt galt, kan du bruge:

$soeg=chr(hexdec($char_to_be_replaced));
$erstat=chr(hexdec($char_to_replace_with));
str_replace($soeg,$erstat,$buffer);

Med venlig hilsen

Ole


Follow ups

References