diff options
author | Felipe Pena <felipe@php.net> | 2008-11-05 23:39:09 +0000 |
---|---|---|
committer | Felipe Pena <felipe@php.net> | 2008-11-05 23:39:09 +0000 |
commit | 27357e9ce5dc5e67a8400ea146f2e2b5484e6cd9 (patch) | |
tree | 3c5ec42770da937cf07da6d0fc358b54dc4d7899 | |
parent | fbe5ef781ef5d23cd43ad68c76fb40a51b6eecca (diff) | |
download | php-git-27357e9ce5dc5e67a8400ea146f2e2b5484e6cd9.tar.gz |
- Fixed wrong check
- Improved test
-rwxr-xr-x | ext/pdo/pdo_stmt.c | 8 | ||||
-rw-r--r-- | ext/pdo_sqlite/tests/debugdumpparams_001.phpt | 20 |
2 files changed, 17 insertions, 11 deletions
diff --git a/ext/pdo/pdo_stmt.c b/ext/pdo/pdo_stmt.c index e8dd0f70e9..4aa6fbde93 100755 --- a/ext/pdo/pdo_stmt.c +++ b/ext/pdo/pdo_stmt.c @@ -2200,14 +2200,14 @@ static PHP_METHOD(PDOStatement, debugDumpParams) uint len; ulong num; - if (zend_hash_get_current_key_ex(stmt->bound_params, &str, &len, &num, 0, &pos) == HASH_KEY_IS_STRING) { - php_stream_printf(out TSRMLS_CC, "Key: Position #%d:\n", num); + if (zend_hash_get_current_key_ex(stmt->bound_params, &str, &len, &num, 0, &pos) == HASH_KEY_IS_LONG) { + php_stream_printf(out TSRMLS_CC, "Key: Position #%ld:\n", num); } else { php_stream_printf(out TSRMLS_CC, "Key: Name: [%d] %.*s\n", len, len, str); } - php_stream_printf(out TSRMLS_CC, "paramno=%d\nname=[%d] %.*s\nis_param=%d\nparam_type=%d\n", - param->paramno, param->namelen, param->namelen, param->name, + php_stream_printf(out TSRMLS_CC, "paramno=%d\nname=[%d] \"%.*s\"\nis_param=%d\nparam_type=%d\n", + param->paramno, param->namelen, param->namelen, param->name ? param->name : "", param->is_param, param->param_type); diff --git a/ext/pdo_sqlite/tests/debugdumpparams_001.phpt b/ext/pdo_sqlite/tests/debugdumpparams_001.phpt index d85784a4f1..c263eb143b 100644 --- a/ext/pdo_sqlite/tests/debugdumpparams_001.phpt +++ b/ext/pdo_sqlite/tests/debugdumpparams_001.phpt @@ -9,23 +9,29 @@ if (!extension_loaded('pdo_sqlite')) print 'skip not loaded'; $db = new pdo('sqlite:memory'); -$x= $db->prepare('select :a, :b'); +$x= $db->prepare('select :a, :b, ?'); $x->bindValue(':a', 1, PDO::PARAM_INT); $x->bindValue(':b', 'foo'); +$x->bindValue(3, 1313); var_dump($x->debugDumpParams()); ?> --EXPECT-- -SQL: [13] select :a, :b -Params: 2 -Key: Position #0: +SQL: [16] select :a, :b, ? +Params: 3 +Key: Name: [2] :a paramno=-1 -name=[2] :a +name=[2] ":a" is_param=1 param_type=1 -Key: Position #0: +Key: Name: [2] :b paramno=-1 -name=[2] :b +name=[2] ":b" +is_param=1 +param_type=2 +Key: Position #2: +paramno=2 +name=[0] "" is_param=1 param_type=2 NULL |