php-doc-en/reference/dba/examples.xml
Christoph Michael Becker ea63eee345 Fix example
This integrates user note 120193.

git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@341092 c90b9560-bf6c-de11-be94-00142212c4b1
2016-11-21 15:10:26 +00:00

101 lines
2.2 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<chapter xml:id="dba.examples" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.examples;
<section xml:id="dba.example">
<title>Basic usage</title>
<para>
<example>
<title>DBA example</title>
<programlisting role="php">
<![CDATA[
<?php
$id = dba_open("/tmp/test.db", "n", "db2");
if (!$id) {
echo "dba_open failed\n";
exit;
}
dba_replace("key", "This is an example!", $id);
if (dba_exists("key", $id)) {
echo dba_fetch("key", $id);
dba_delete("key", $id);
}
dba_close($id);
?>
]]>
</programlisting>
</example>
</para>
<para>
DBA is binary safe and does not have any arbitrary limits.
However, it inherits all limits set by the underlying
database implementation.
</para>
<para>
All file-based databases must provide a way of setting the file
mode of a new created database, if that is possible at all. The
file mode is commonly passed as the fourth argument to
<function>dba_open</function> or <function>dba_popen</function>.
</para>
<para>
You can access all entries of a database in a linear way by using the
<function>dba_firstkey</function> and <function>dba_nextkey</function>
functions. You may not change the database while traversing it.
</para>
<para>
<example>
<title>Traversing a database</title>
<programlisting role="php">
<![CDATA[
<?php
// ...open database...
$key = dba_firstkey($id);
while ($key !== false) {
if (true) { // remember the key to perform some action later
$handle_later[] = $key;
}
$key = dba_nextkey($id);
}
foreach ($handle_later as $val) {
dba_delete($val, $id);
}
?>
]]>
</programlisting>
</example>
</para>
</section>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->