pg_delete
pg_delete
(PHP 4 >= 4.3.0, PHP 5, PHP 7)
pg_delete — Deletes records
Description
mixed pg_delete ( resource $connection , string $table_name , array $assoc_array [, int $options = PGSQL_DML_EXEC ] )
pg_delete() deletes records from a table specified by the keys and values in assoc_array
. If options
is specified, pg_convert() is applied to assoc_array
with the specified options.
Parameters
-
connection
-
PostgreSQL database connection resource.
-
table_name
-
Name of the table from which to delete rows.
-
assoc_array
-
An array whose keys are field names in the table
table_name
, and whose values are the values of those fields that are to be deleted. -
options
-
Any number of
PGSQL_CONV_FORCE_NULL
,PGSQL_DML_NO_CONV
,PGSQL_DML_ESCAPE
,PGSQL_DML_EXEC
,PGSQL_DML_ASYNC
orPGSQL_DML_STRING
combined. IfPGSQL_DML_STRING
is part of theoptions
then query string is returned. WhenPGSQL_DML_NO_CONV
orPGSQL_DML_ESCAPE
is set, it does not call pg_convert() internally.
Return Values
Returns TRUE
on success or FALSE
on failure. Returns string if PGSQL_DML_STRING
is passed via options
.
Examples
Example #1 pg_delete() example
<?php $db = pg_connect('dbname=foo'); // This is safe, since $_POST is converted automatically $res = pg_delete($db, 'post_log', $_POST); if ($res) { echo "POST data is deleted: $res\n"; } else { echo "User must have sent wrong inputs\n"; } ?>
Changelog
Version | Description |
---|---|
5.6.0 | No longer experimental. Added PGSQL_DML_ESCAPE constant, TRUE /FALSE and NULL data type support. |
5.5.3/5.4.19 | Direct SQL injection to table_name and Indirect SQL injection to identifiers are fixed. |
See Also
- pg_convert() - Convert associative array values into suitable for SQL statement
© 1997–2017 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://secure.php.net/manual/en/function.pg-delete.php