DB_common::quoteIdentifier()
DB_common::quoteIdentifier() -- 識別子として安全に使用できるように文字列を整形する
概要
string quoteIdentifier (string $str)
説明
入力文字列を整形し、クエリ内で識別子として安全に使用できるようにします。
識別子とは、テーブル名やカラム名のようなオブジェクトのことです。
返される整形結果は、使用しているデータベースの型に依存します。
以下のドライバで、識別子が正しく動作することが知られています。
| mssql |
| mysql |
| mysqli |
| oci8 |
| odbc(access) |
| odbc(db2) |
| pgsql |
| sqlite |
| sybase |
InterBase については、PHP 4 ではうまく動作しないようです。
PHP 5 を使用すると正しく動作します。
パラメータ
- string
$str
クォートされる入力文字列。
返り値
string - 整形された文字列が返されます。
注意
この関数は、スタティックにコールする
ことはできません。
リリース 1.6.0 以降で使用可能です。
| 警告 |
区切られた識別子が使用「できる」からといって、それを使用
「しなければならない」わけではありません。一般的に、これを使用すると
他の問題に遭遇することがありえます。
識別子で以下の文字を使用すると、可搬性が損なわれます。
| バックティック (`) -- MySQL | | ダブルクォート (") -- Oracle | | ブラケット ([ or ]) -- Access |
|
例
例 33-1quoteIdentifier() の使用法
<?php
// $db という名前の DB オブジェクトを取得しているとします...
$sql = 'SELECT ' . $db->quoteIdentifier('company name')
. ', address FROM clients';
$res =& $db->query($sql);
?>
|
|