PHP マニュアル
前のページ |  | 次のページ

# addslashes

(PHP 3, PHP 4, PHP 5)

addslashes -- 文字列をスラッシュでクォートする

## 説明

string addslashes ( string str )

データベースへの問い合わせなどに際してクォートされるべき 文字の前にバックスラッシュを挿入した文字列を返します。クォート されるべき文字とは、シングルクォート(`'`), ダブルクォート(`"`),バックスラッシュ (`\`) ,NUL (`NULL` バイト) です。

addslashes() の使用例は、 データベースにデータを登録するときです。例えば、 `O'reilly` という名前をデータベースに挿入するには、 エスケープする必要があります。ほとんどのデータベースでは `O\'reilly` という具合に `\` を使用します。これはデータベースにデータを格納する場合のみ必要です。 追加される `\` は挿入されません。 PHP のディレクティブ magic_quotes_sybase を `\` にすると、`'` はもうひとつの `'` でエスケープされます。

PHP ディレクティブ magic_quotes_gpc はデフォルトでは `on` で、 全ての GET、POST、COOKIE データについて基本的に addslashes() を実行します。 magic_quotes_gpc によってすでにエスケープされた文字列に対して addslashes() を実行しないでください。 さもないと、重複してエスケープされてしまいます。 関数 get_magic_quotes_gpc() はこれを確認するのに役立つかも知れません。

例 1. addslashes() の例

`<?php $str = "Is your name O'reilly?"; // 出力: Is your name O\'reilly? echo addslashes($str); ?>`

stripslashes(), stripcslashes(), addcslashes(), htmlspecialchars(), quotemeta(), get_magic_quotes_gpc() も参照ください。

前のページ | ホーム | 次のページ
addcslashes | 上に戻る | bin2hex