PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

dbmreplace> <dbmnextkey
Last updated: Tue, 27 Nov 2007

view this page in

dbmopen

(PHP 4)

dbmopen — Abre una base de datos DBM

Descripción

resource dbmopen ( string $nombre_archivo , string $banderas )

Abre la base de datos DBM especificada en el modo indicado.

Lista de parámetros

nombre_archivo

El nombre del archivo DBM a ser abierto

banderas

El modo de apertura de archivo, que es un valor entre r, n, c o w, los cuales representan los modos de solo-lectura, nuevo (implica lectura-escritura, y probablemente trunque una base de datos existente con el mismo nombre), crear (implica lectura-escritura, y no trunca una base de datos existente con el mismo nombre) y lectura-escritura respectivamente.

Valores retornados

Devuelve un identificador a ser pasado a las demás funciones DBM en caso de éxito, o FALSE si ocurre un error.

Notes

Note: Si es usado el soporte NDBM, lo que hará NDBM en realidad es crear los archivos nombre_archivo.dir y nombre_archivo.pag. GDBM usa sólo un archivo, asi como lo hace el soporte interno de archivos planos, y la BD Berkeley crea un archivo nombre_archivo.db.
Note que PHP realiza su propio bloqueo de archivos adicionalmente a cualquier bloqueo de archivos que pueda ser efectuado por la biblioteca DBM misma. PHP no elimina los archivos .lck que crea. Estos archivos son usados simplemente como inodes fijos sobre los que se realiza el bloqueo de archivos. Para más información sobre los archivos DBM, consulte sus páginas man Unix, u obtenga » GNU GDBM.

Note: Cuando safe-mode (modo-seguro) está activado, PHP comprueba si los archivos o directorios que va a utilizar tienen la misma UID que el script que está siendo ejecutado.

Ver también



dbmreplace> <dbmnextkey
Last updated: Tue, 27 Nov 2007
 
add a note add a note User Contributed Notes
dbmopen
sitz at onastick dot net
17-Jul-2001 11:11
Want to use dbmopen() to open an NDBM DB under solaris? Want to have GDBM support as well? Tough; you can't. You *can* use dba_open(), but you need to jump through a couple of hoops first:

First, you need to re-roll libgdbm so that DBM/NDBM compatiblity are removed. For GDBM-1.7.3, change this line in the Makefile:

OBJS = $(DBM_OF) $(NDBM_OF) $(GDBM_OF)

to this:

OBJS = $(GDBM_OF)

Once that's installed, re-run ./configure --with-gdbm=/<prefix> --with-ndbm --with-db=/<prefix> <other args>, where <prefix> is the directory which holds the include/ directory containing the associated header files. make, make install, adjust your scripts to use dba_open() with the ndbm handler. Voila!
mavetju at chello dot nl
11-Jan-2001 04:19
If you are running php >4.0.2 and you have suddenly problems with dbmopen (i.e. it complains that the function does not exist), recompile php with --with-ndb *and* --with-db
skipatrol at sprintmail dot com
13-Oct-1999 05:35
If using php3 on a win 95/98 machine, you must have the complete path to the db file.  And always remember that if you user the " mark, add one extra slash before any regular slashes.  Otherwise use the ' and normal slashes.

$dmb = 'd:\httpd\storit\users';

$modify = dbmopen($dmb, "w");
$username = dbmfetch($modify, $email, $username);
$password = dbmfetch($modify, $username, $password);

echo "Current username: $username";
echo "Current password: $password";

exit;

dbmreplace> <dbmnextkey
Last updated: Tue, 27 Nov 2007
 
 
show source | credits | sitemap | contact | advertising | mirror sites