ConFoo 2025

dbase_replace_record

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

dbase_replace_recordSubstitui um registro em um banco de dados

Descrição

dbase_replace_record(resource $database, array $data, int $number): bool

Substitui o registro no banco de dados com os dados indicados.

Parâmetros

database

O recurso de banco de dados, retornado por dbase_open() ou dbase_create().

data

Um array indexado de dados. O número deve ser igual ao número de campos no banco de dados, caso contrário dbase_replace_record() irá falhar.

Nota:

Se o valor de retorno de dbase_get_record() for usado para este parâmetro, lembre-se de redefinir a chave de nome deleted.

number

Um inteiro que vai de 1 até o número de registros no banco de dados (como retornado por dbase_numrecords()).

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

Registro de Alterações

Versão Descrição
PECL dbase 7.0.0 database agora é do tipo resource ao invés de int.

Exemplos

Exemplo #1 Atualizando um registro no banco de dados

<?php

// abre somente leitura
$db = dbase_open('/tmp/test.dbf', 2);

if (
$db) {
// obtém o registro antigo
$row = dbase_get_record_with_names($db, 1);

// remove a entrada 'deletada'
unset($row['deleted']);

// Atualiza o campo 'date' com a dada atual
$row['date'] = date('Ymd');

// converte o registro para um array indexado
$row = array_values($row);

// Substitui o registro
dbase_replace_record($db, $row, 1);
dbase_close($db);
}

?>

Notas

Nota:

Campos booleanos resultam em um elemento do tipo int (0 ou 1) quando obtidos através de dbase_get_record() ou dbase_get_record_with_names(). Se fores escritos de volta, resulta no valor tornando-se 0, portanto deve-se ter cuidado para ajustar os valores adequadamente.

Veja Também

adicione uma nota

Notas Enviadas por Usuários (em inglês) 1 note

up
0
Anonymous
9 years ago
Make sure you opened the database for WRITE!
dbase_open( "yourfile.dbf", 2)
To Top