Make sure you opened the database for WRITE!
dbase_open( "yourfile.dbf", 2)
(PHP 5 < 5.3.0, dbase 5, dbase 7)
dbase_replace_record — Replaces a record in a database
$dbase_identifier
, array $record
, int $record_number
) : boolReplaces the given record in the database with the given data.
dbase_identifier
The database link identifier, returned by dbase_open() or dbase_create().
record
An indexed array of data. The number of items must be equal to the number of fields in the database, otherwise dbase_replace_record() will fail.
Note:
If you're using dbase_get_record() return value for this parameter, remember to reset the key named deleted.
record_number
An integer which spans from 1 to the number of records in the database (as returned by dbase_numrecords()).
成功时返回 TRUE
, 或者在失败时返回 FALSE
。
Example #1 Updating a record in the database
<?php
// open in read-write mode
$db = dbase_open('/tmp/test.dbf', 2);
if ($db) {
// gets the old row
$row = dbase_get_record_with_names($db, 1);
// remove the 'deleted' entry
unset($row['deleted']);
// Update the date field with the current timestamp
$row['date'] = date('Ymd');
// convert the row to an indexed array
$row = array_values($row);
// Replace the record
dbase_replace_record($db, $row, 1);
dbase_close($db);
}
?>
Note:
Boolean fields result in an integer element value (0 or 1) when retrieved via dbase_get_record() or dbase_get_record_with_names(). If they are written back, this results in the value becoming 0, so care has to be taken to properly adjust the values.
Make sure you opened the database for WRITE!
dbase_open( "yourfile.dbf", 2)