PDO::quote
    (no version information, might be only in CVS)
PDO::quote -- 
   クエリ用の文字列をクオートする
  
説明
string 
PDO::quote ( string string [, int parameter_type] )
   PDO::quote() は入力文字列のまわりに引用符を付け
   (必要であれば) 、
   入力文字列にあるシングルクオートをエスケープします。その場合、
   構成しているドライバに適したクオート形式が使用されます。
  
   この関数を SQL の構築に使用する場合、
   SQL ステートメントにユーザーの入力値を埋め込むための
   PDO::quote() を使用する代わりに、
   バインドパラメータを用いて SQL を準備するための
   PDO::prepare()
   を使用することが強く推奨されます。
   バインドパラメータを用いるプリペアドステートメントは、
   補間されたクエリした場合に比べ、
   移植性や利便性に優れ、SQL インジェクションに対する免疫力を持つだけでなく
   しばしばより高速で、サーバやクライアント側でコンパイル済みの形式でクエリを
   キャッシュする事が可能です。
  
   全ての PDO ドライバがこのメソッドを実装しているわけではありません。
   代わりにプリペアドステートメントを使用することを検討してください。
  
パラメータ
   
- string
 
        クオートされる文字列を指定します。
       
- parameter_type
 
        クオートするスタイルを変更するため、
        ドライバにデータ型のヒントを提供します。
        デフォルト値は、PDO::PARAM_STR です。
       
 
  返り値
   理論上安全なクオートされた SQL ステートメントの文字列を返します。
   ドライバがこの方法での引用符付けをサポートしていない場合は
   FALSE を返します。
  
例
   
例 1. 通常の文字列をクオートする 
<?php $conn = new PDO('sqlite:/home/lynn/music.sql3');
  /* 単純な文字列 */ $string = 'Nice'; print "Unquoted string: $string\n"; print "Quoted string: " . $conn->quote($string) . "\n"; ?>
 |  
 上の例の出力は以下となります。 Unquoted string: Nice
Quoted string: 'Nice'  |  
  | 
   例 2. 危険な文字列をクオートする 
<?php $conn = new PDO('sqlite:/home/lynn/music.sql3');
  /* 危険な文字列 */ $string = 'Naughty \' string'; print "Unquoted string: $string\n"; print "Quoted string:" . $conn->quote($string) . "\n"; ?>
 |  
 上の例の出力は以下となります。 Unquoted string: Naughty ' string
Quoted string: 'Naughty '' string'  |  
  | 
   例 3. 複雑な文字列をクオートする 
<?php $conn = new PDO('sqlite:/home/lynn/music.sql3');
  /* 複雑な文字列 */ $string = "Co'mpl''ex \"st'\"ring"; print "Unquoted string: $string\n"; print "Quoted string: " . $conn->quote($string) . "\n"; ?>
 |  
 上の例の出力は以下となります。 Unquoted string: Co'mpl''ex "st'"ring
Quoted string: 'Co''mpl''''ex "st''"ring'  |  
  | 
  参考
   
| PDO::prepare() | 
| PDOStatement::execute() |