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