One should take care when checking the return value.
0 == false which is not equal with failed delete.
if(!$res)
echo "Nothing was deleted";
pg_delete
(PHP 4 >= 4.3.0, PHP 5)
pg_delete — Lscht Datenstze
Beschreibung
$connection
, string $table_name
, array $assoc_array
[, int $options = PGSQL_DML_EXEC
] )
pg_delete() löscht Datensätze aus table_name,
deren Feldnamen den Indizes von assoc_array
entsprechen und deren Spaltenwerte mit den Werten der Arrayelemente identisch sind. Falls
options angegeben wurde, wird pg_convert() mit
den angegebenen Optionen auf assoc_array angewendet.
Parameter-Liste
-
connection -
PostgreSQL Verbindungskennung.
-
table_name -
Name der Tabelle, aus der Zeilen gelöscht werden.
-
assoc_array -
Ein array dessen Schlüssel den Feldnamen der Tabelle
table_nameentsprechen und dessen Werte den zu löschenden Spaltenwerten entsprechen. -
options -
Jede Kombination aus
PGSQL_CONV_FORCE_NULL,PGSQL_DML_NO_CONV,PGSQL_DML_EXECoderPGSQL_DML_STRING. FallsPGSQL_DML_STRINGin denoptionsenthalten ist, wird der Abfragestring zurückgegeben.
Rückgabewerte
Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben. Gibt einen string zurück, falls
die Konstante PGSQL_DML_STRING im Parameter
options übergeben wurde.
Beispiele
Beispiel #1 pg_delete() Beispiel
<?php
$db = pg_connect('dbname=foo');
// Das ist sicher, weil $_POST automatisch konvertiert wird
$res = pg_delete($db, 'post_log', $_POST);
if ($res) {
echo "POST-Daten wurden gelscht: $res\n";
} else {
echo "Aufruf erfolgte mit falschen Angaben\n";
}
?>
Diese Funktion ist EXPERIMENTELL. Das Verhalten, der Funktionsname und alles Andere, was hier dokumentiert ist, kann sich in zukünftigen PHP-Versionen ohne Ankündigung ändern. Seien Sie gewarnt und verwenden Sie diese Funktion auf eigenes Risiko.
Siehe auch
- pg_convert() - Konvertiert die Werte eines assoziativen Arrays in passende Werte für SQL-Kommandos.
