【PHP8.x】stripslashes関数の使い方
作成日: 更新日:
stripslashes関数は、バックスラッシュ(\
)によってエスケープされた文字列を元に戻す処理を実行する関数です。この関数は引数として受け取った文字列を走査し、エスケープシーケンスである \'
、\"
、\\
を、それぞれ元の文字であるシングルクォート('
)、ダブルクォート("
)、バックスラッシュ(\
)に変換した新しい文字列を返します。例えば、I\'m a programmer.
という文字列に対してこの関数を適用すると、I'm a programmer.
という結果が得られます。かつてPHPには、外部からの入力データを自動的にエスケープする magic_quotes_gpc
という機能があり、この機能で処理されたデータを元に戻すために stripslashes
関数が広く使われていました。しかし、この機能はPHPの古いバージョンで廃止されたため、現在の開発において、フォームから受け取った入力データに対して無条件にこの関数を使用する必要性はほとんどありません。データベースに保存するデータのエスケープ処理には、プリペアドステートメントのような、より安全で推奨される方法を使用してください。
基本的な使い方
構文(syntax)
<?php
// シングルクォートとバックスラッシュがエスケープされた文字列
$escaped_string = "I\'m a system engineer. The path is C:\\\\temp.";
// stripslashes() を使ってバックスラッシュを取り除く
$original_string = stripslashes($escaped_string);
// 処理後の文字列を出力
echo $original_string;
// 出力結果:
// I'm a system engineer. The path is C:\temp.
?>
引数(parameters)
string $string
- string $string: スラッシュ(\)をエスケープ解除する対象の文字列
戻り値(return)
string
バックスラッシュ \
によるエスケープを削除した文字列を返します。