PHP: Hypertext Preprocessor (original) (raw)

dbase_replace_record

(PHP 5 < 5.3.0, dbase 5, dbase 7)

dbase_replace_record — Replaces a record in a database

Description

Parameters

database

The database resource, returned by dbase_open() or dbase_create().

data

An indexed array of data. The number of items must be equal to the number of fields in the database, otherwisedbase_replace_record() will fail.

Note:

If you're using dbase_get_record() return value for this parameter, remember to reset the key named deleted.

number

An integer which spans from 1 to the number of records in the database (as returned by dbase_numrecords()).

Return Values

Returns [true](reserved.constants.php#constant.true) on success or [false](reserved.constants.php#constant.false) on failure.

Changelog

Version Description
PECL dbase 7.0.0 database is now a resource instead of an int.

Examples

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=dbasegetrecordwithnames(row = dbase_get_record_with_names(row=dbasegetrecordwithnames(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=arrayvalues(row = array_values(row=arrayvalues(row);// Replace the record
dbase_replace_record($db, $row, 1);
dbase_close($db);
}?>`

Notes

Note:

Boolean fields result in an int element value (0 or 1) when retrieved viadbase_get_record() ordbase_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.

See Also

Found A Problem?

Anonymous

9 years ago

Make sure you opened the database for WRITE! dbase_open( "yourfile.dbf", 2)