pg_escape_literal
テキスト型フィールドに挿入するために、リテラルをエスケープする
説明
stringfalse pg_escape_literal(PgSql\Connection $connection = ?, string $string)
パラメータ
-
connection
-
PgSql\Connection クラスのインスタンス。
connection が指定されない場合は、デフォルトの接続を使います。
デフォルトの接続とは、pg_connect または pg_pconnect によって確立された直近の接続です。
警告PHP 8.1.0 以降では、デフォルトの接続を使うことは推奨されなくなりました。
-
string
-
エスケープするテキスト文字列。
戻り値
エスケープされたデータを文字列で返します。
失敗した場合に false を返します。
例
例1 pg_escape_literal の例
<?php
// データベースに接続します
$dbconn = pg_connect('dbname=foo');
// (アポストロフィやバックスラッシュが含まれている) テキストファイルを読み込みます
$data = file_get_contents('letter.txt');
// テキストデータをエスケープします
$escaped = pg_escape_literal($data);
// それをデータベースに挿入します。{$escaped} の前後にクォートがないことに注目
pg_query("INSERT INTO correspondence (name, data) VALUES ('My letter', {$escaped})");
?>
参考
- pg_escape_identifier
- pg_escape_bytea
- pg_escape_string