(PHP 4, PHP 5, PHP 7, PHP 8)
stripslashes — クォートされた文字列のクォート部分を取り除く
$string
): stringクォートされた文字列を元に戻します。
stripslashes() は、 (データベースのような)エスケープする必要がある 場所にデータをまだ挿入していない場合に使うことができます。 例えば、単純に HTML フォームからのデータを直接出力するような場合です。
string
入力文字列。
バックスラッシュが取り除かれた文字列を返します(\'
が '
になるなど)。
2 つ並んだバックスラッシュ (\\
)
は 1 つのバックスラッシュ (\
) になります。
例1 stripslashes() の例
<?php
$str = "Is your name O\'reilly?";
// 出力: Is your name O'reilly?
echo stripslashes($str);
?>
注意:
stripslashes() は再帰的な処理を行いません。 この関数を多次元配列に適用する場合は、 再帰的な関数を使用する必要があります。
例2 配列に対する stripslashes() の使用
<?php
function stripslashes_deep($value)
{
$value = is_array($value) ?
array_map('stripslashes_deep', $value) :
stripslashes($value);
return $value;
}
// 例
$array = array("f\\'oo", "b\\'ar", array("fo\\'o", "b\\'ar"));
$array = stripslashes_deep($array);
// 出力
print_r($array);
?>
上の例の出力は以下となります。
Array ( [0] => f'oo [1] => b'ar [2] => Array ( [0] => fo'o [1] => b'ar ) )