一重引用符と二重引用符の両方をバックスラッシュでエスケープする単純な PHP スクリプトがあります。これが私のコードです:
$output = str_replace('"','\"',$input);
$output = str_replace("'","\'",$output);
return $output;
問題は、二重引用符のみをエスケープするため、次のような文字列
"This" is a 'string'
であると解析します
\"This\" is a 'string'
いいえ
\"This\" is a \'string\'
2行目を次のように変更すると
$output = str_replace("'","asdf",$output);
私は得る
\"This\" is a asdfstringasdf
何がうまくいかないのですか?
ありがとう