summaryrefslogtreecommitdiff
path: root/ext/pdo_sqlite/php_pdo_sqlite.h
diff options
context:
space:
mode:
authorWez Furlong <wez@php.net>2004-09-19 10:55:41 (GMT)
committerWez Furlong <wez@php.net>2004-09-19 10:55:41 (GMT)
commit2f161ab79d4af52fc7b21e98c0450f3900f83bce (patch)
treeb7d2d09b45173dadeeada5e32457efe32a36715f /ext/pdo_sqlite/php_pdo_sqlite.h
parentdb7af4d8f00d489384406d5ebbfc66c42a74c6f4 (diff)
downloadphp-2f161ab79d4af52fc7b21e98c0450f3900f83bce.tar.gz
First cut at a PDO driver for SQLite 3.x
Features: - native prepare/execute and bound parameters. - finally supports binary data (via bound parameter api) - full unicode/utf-8 support Missing: - UDF functions - authorizer hooks for safe_mode/open_basedir restrictions You need to download, compile and install sqlite3 yourself; we're not bundling it (at least, not yet).
Diffstat (limited to 'ext/pdo_sqlite/php_pdo_sqlite.h')
-rw-r--r--ext/pdo_sqlite/php_pdo_sqlite.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/ext/pdo_sqlite/php_pdo_sqlite.h b/ext/pdo_sqlite/php_pdo_sqlite.h
new file mode 100644
index 0000000..65d0b23
--- /dev/null
+++ b/ext/pdo_sqlite/php_pdo_sqlite.h
@@ -0,0 +1,71 @@
+/*
+ +----------------------------------------------------------------------+
+ | PHP Version 5 |
+ +----------------------------------------------------------------------+
+ | Copyright (c) 1997-2004 The PHP Group |
+ +----------------------------------------------------------------------+
+ | This source file is subject to version 3.0 of the PHP license, |
+ | that is bundled with this package in the file LICENSE, and is |
+ | available through the world-wide-web at the following url: |
+ | http://www.php.net/license/3_0.txt. |
+ | If you did not receive a copy of the PHP license and are unable to |
+ | obtain it through the world-wide-web, please send a note to |
+ | license@php.net so we can mail you a copy immediately. |
+ +----------------------------------------------------------------------+
+ | Author: Wez Furlong <wez@php.net> |
+ +----------------------------------------------------------------------+
+*/
+
+/* $Id$ */
+
+
+#ifndef PHP_PDO_SQLITE_H
+#define PHP_PDO_SQLITE_H
+
+extern zend_module_entry pdo_sqlite_module_entry;
+#define phpext_pdo_sqlite_ptr &pdo_sqlite_module_entry
+
+#ifdef PHP_WIN32
+#define PHP_PDO_SQLITE_API __declspec(dllexport)
+#else
+#define PHP_PDO_SQLITE_API
+#endif
+
+#ifdef ZTS
+#include "TSRM.h"
+#endif
+
+PHP_MINIT_FUNCTION(pdo_sqlite);
+PHP_MSHUTDOWN_FUNCTION(pdo_sqlite);
+PHP_RINIT_FUNCTION(pdo_sqlite);
+PHP_RSHUTDOWN_FUNCTION(pdo_sqlite);
+PHP_MINFO_FUNCTION(pdo_sqlite);
+
+/*
+ Declare any global variables you may need between the BEGIN
+ and END macros here:
+
+ZEND_BEGIN_MODULE_GLOBALS(pdo_sqlite)
+ long global_value;
+ char *global_string;
+ZEND_END_MODULE_GLOBALS(pdo_sqlite)
+*/
+
+/* In every utility function you add that needs to use variables
+ in php_pdo_sqlite_globals, call TSRMLS_FETCH(); after declaring other
+ variables used by that function, or better yet, pass in TSRMLS_CC
+ after the last function argument and declare your utility function
+ with TSRMLS_DC after the last declared argument. Always refer to
+ the globals in your function as PDO_SQLITE_G(variable). You are
+ encouraged to rename these macros something shorter, see
+ examples in any other php module directory.
+*/
+
+#ifdef ZTS
+#define PDO_SQLITE_G(v) TSRMG(pdo_sqlite_globals_id, zend_pdo_sqlite_globals *, v)
+#else
+#define PDO_SQLITE_G(v) (pdo_sqlite_globals.v)
+#endif
+
+#endif /* PHP_PDO_SQLITE_H */
+