0

次のようなタイトルの変数に文字列があり$strます。これは、JSON 形式に変換した後に得られたものです。そのため、もう 1 つのスラッシュが JSON によって追加されます。文字列を表示している間は表示されないため、無視してください。

$str ="Let\\'s\nIt\\'s\nHe\\'s\nShe\\'s"; # \n is used for new line character, please ignore it

ここで、文字列内のそのようなバックスラッシュ/es の存在を確認し、それらが存在する場合はそれらを削除して、目的のクリーンアップされた文字列を取得したいと考えています。上記の場合、出力文字列は次のようになります (JSON 形式に変換した後): "Let\'s\nIt\'s\nHe\'s\nShe\'s"

以下のコードを試しましたが、うまくいきませんでした:

$str         = br2nl(str_replace('\\','',$str));
function br2nl($buff = '') {
    $buff = mb_convert_encoding($buff, 'HTML-ENTITIES', "UTF-8");
    $buff = preg_replace('#<br[/\s]*>#si', "\n", $buff);
    $buff = trim($buff);

    return $buff;
  }

この点で誰かが私を助けてくれませんか?

4

1 に答える 1

1

以前に提案したように、stripslashes()これを行う最良の方法は次のとおりです。

<?php
  $dirty ="Let\\'s\nIt\\'s\nHe\\'s\nShe\\'s";
  $clean = stripslashes($dirty);
  echo $clean."\n";
?>

出力:

しましょう
これは
彼は
彼女は
于 2015-05-18T12:28:30.893 に答える