]> granicus.if.org Git - php/commitdiff
prep package file for release.
authorWez Furlong <wez@php.net>
Wed, 9 Mar 2005 05:03:58 +0000 (05:03 +0000)
committerWez Furlong <wez@php.net>
Wed, 9 Mar 2005 05:03:58 +0000 (05:03 +0000)
fix my favourite typo.
fix compile warnings

ext/pdo/package.xml
ext/pdo/pdo.c
ext/pdo/pdo_dbh.c
ext/pdo/pdo_stmt.c
ext/pdo/php_pdo_int.h

index c0d27de57a7495eadf1704243f3473057287ab0c..19502be61ed949e377b6c290b14eaced35d3dec5 100755 (executable)
  <license>PHP</license>
  <release>
   <state>beta</state>
-  <version>0.2.4</version>
-  <date>2005-02-18</date>
+  <version>0.3</version>
+  <date>2005-03-08</date>
 
   <notes>
-Note that PDO on its own is useless.
-You need to install a PDO database driver to make use of it,
-check http://pecl.php.net for a list of available PDO drivers.
+You need to install a PDO database driver to make use of PDO,
+check http://pecl.php.net/package-search.php?pkg_name=PDO
+for a list of available PDO drivers.
 
 It is highly recommended that you update to the latest stable PHP 5 snapshot
 before using PDO.
@@ -60,6 +60,16 @@ http://snaps.php.net/win32/PECL_5_0/php_pdo.dll
 You can find additional PDO drivers at:
 http://snaps.php.net/win32/PECL_5_0/
 
+- New fetch modes:
+  PDO_FETCH_FUNC, PDO_FETCH_GROUP, PDO_FETCH_UNIQUE, PDO_FETCH_CLASSTYPE
+- New fetch mode for PHP 5.1 and higher: PDO_FETCH_SERIALIZE
+- Changed signature for PDO::lastInsertId(); it is now:
+    string PDO::lastInsertId([string name])
+  this allows arbitrary unique identifiers to be returned, and allows for 
+  better support for RDBMS with sequences.
+- Improved bound parameter emulation when using non-string types.
+- PDOStatement implements SPL Traversable interface when SPL is present.
+
 - Added PDO::quote($string).  Closes PECL Bug #3393
 - Fixed PDO::query() for drivers using bound parameter emulation.
 - Fixed PECL Bug #3434, crash when using odbc with named parameters.
index b4f83ed04249b669c8d89ef405ef2f61a5c5a03a..4043b90f6347e4d6d79099c106e4a6cd701deabe 100755 (executable)
@@ -79,7 +79,7 @@ zend_module_entry pdo_module_entry = {
        PHP_RINIT(pdo),
        PHP_RSHUTDOWN(pdo),
        PHP_MINFO(pdo),
-       "0.2.4",
+       "0.3",
        STANDARD_MODULE_PROPERTIES
 };
 /* }}} */
index f39b04e71fa38c51b22254c06b3fbeb706d3f954..f7e64b6b5bbef4f9b1741dfb13044dd17ffaf8bf 100755 (executable)
@@ -385,7 +385,7 @@ static PHP_FUNCTION(dbh_constructor)
 }
 /* }}} */
 
-static zval * pdo_stmt_instanciate(zval *object, zend_class_entry *dbstmt_ce, zval *ctor_args TSRMLS_DC) /* {{{ */
+static zval * pdo_stmt_instantiate(zval *object, zend_class_entry *dbstmt_ce, zval *ctor_args TSRMLS_DC) /* {{{ */
 {
        if (ctor_args) {
                if (Z_TYPE_P(ctor_args) != IS_ARRAY) {
@@ -505,8 +505,8 @@ static PHP_METHOD(PDO, prepare)
                ctor_args = NULL;
        }
 
-       if (!pdo_stmt_instanciate(return_value, dbstmt_ce, ctor_args TSRMLS_CC)) {
-               zend_throw_exception_ex(php_pdo_get_exception(), 0 TSRMLS_CC, "Failed to instanciate statement class %s", dbstmt_ce->name);
+       if (!pdo_stmt_instantiate(return_value, dbstmt_ce, ctor_args TSRMLS_CC)) {
+               zend_throw_exception_ex(php_pdo_get_exception(), 0 TSRMLS_CC, "Failed to instantiate statement class %s", dbstmt_ce->name);
                return;
        }
        stmt = (pdo_stmt_t*)zend_object_store_get_object(return_value TSRMLS_CC);
@@ -829,8 +829,8 @@ static PHP_METHOD(PDO, query)
        
        PDO_DBH_CLEAR_ERR();
 
-       if (!pdo_stmt_instanciate(return_value, pdo_dbstmt_ce, NULL TSRMLS_CC)) {
-               zend_throw_exception_ex(php_pdo_get_exception(), 0 TSRMLS_CC, "Failed to instanciate statement class %s", pdo_dbstmt_ce->name);
+       if (!pdo_stmt_instantiate(return_value, pdo_dbstmt_ce, NULL TSRMLS_CC)) {
+               zend_throw_exception_ex(php_pdo_get_exception(), 0 TSRMLS_CC, "Failed to instantiate statement class %s", pdo_dbstmt_ce->name);
                return;
        }
        stmt = (pdo_stmt_t*)zend_object_store_get_object(return_value TSRMLS_CC);
@@ -1165,7 +1165,7 @@ static void dbh_free(pdo_dbh_t *dbh TSRMLS_DC)
        pefree(dbh, dbh->is_persistent);
 }
 
-static void pdo_dbh_free_storage(void *object TSRMLS_DC)
+static void pdo_dbh_free_storage(zend_object *object TSRMLS_DC)
 {
        pdo_dbh_t *dbh = (pdo_dbh_t*)object;
        if (!dbh) {
index e8bb2dd0088b748a1a86b93f1cc34ca3fae27662..7092ad32f1bf1389e6a98f1b4cee041340aa7f12 100755 (executable)
@@ -1861,7 +1861,7 @@ static void free_statement(pdo_stmt_t *stmt TSRMLS_DC)
        efree(stmt);
 }
 
-void pdo_dbstmt_free_storage(void *object TSRMLS_DC)
+void pdo_dbstmt_free_storage(zend_object *object TSRMLS_DC)
 {
        pdo_stmt_t *stmt = (pdo_stmt_t*)object;
 
@@ -2182,7 +2182,7 @@ zend_object_handlers pdo_row_object_handlers = {
        NULL
 };
 
-void pdo_row_free_storage(void  *object TSRMLS_DC)
+void pdo_row_free_storage(zend_object *object TSRMLS_DC)
 {
        pdo_stmt_t *stmt = (pdo_stmt_t*)object;
 
index 6f300ccec51450f600f2f75f61544bf8bb23d9d8..fed5c861f447524b82dfefbd7ac40898bee69b2e 100755 (executable)
@@ -33,7 +33,7 @@ extern ZEND_RSRC_DTOR_FUNC(php_pdo_pdbh_dtor);
 extern zend_object_value pdo_dbstmt_new(zend_class_entry *ce TSRMLS_DC);
 extern function_entry pdo_dbstmt_functions[];
 extern zend_class_entry *pdo_dbstmt_ce;
-void pdo_dbstmt_free_storage(void *object TSRMLS_DC);
+void pdo_dbstmt_free_storage(zend_object *object TSRMLS_DC);
 zend_object_iterator *pdo_stmt_iter_get(zend_class_entry *ce, zval *object TSRMLS_DC);
 extern zend_object_handlers pdo_dbstmt_object_handlers;
 int pdo_stmt_describe_columns(pdo_stmt_t *stmt TSRMLS_DC);
@@ -42,7 +42,7 @@ int pdo_stmt_setup_fetch_mode(INTERNAL_FUNCTION_PARAMETERS, pdo_stmt_t *stmt, in
 extern zend_object_value pdo_row_new(zend_class_entry *ce TSRMLS_DC);
 extern function_entry pdo_row_functions[];
 extern zend_class_entry *pdo_row_ce;
-void pdo_row_free_storage(void *object TSRMLS_DC);
+void pdo_row_free_storage(zend_object *object TSRMLS_DC);
 extern zend_object_handlers pdo_row_object_handlers;
 
 zend_object_iterator *php_pdo_dbstmt_iter_get(zend_class_entry *ce, zval *object TSRMLS_DC);