diff options
-rw-r--r-- | ext/mysql/php_mysql.c | 8 | ||||
-rw-r--r-- | ext/mysqli/mysqli_api.c | 11 | ||||
-rw-r--r-- | ext/mysqli/mysqli_nonapi.c | 30 |
3 files changed, 4 insertions, 45 deletions
diff --git a/ext/mysql/php_mysql.c b/ext/mysql/php_mysql.c index b948fd2158..3056586e8c 100644 --- a/ext/mysql/php_mysql.c +++ b/ext/mysql/php_mysql.c @@ -1993,7 +1993,7 @@ static void php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int result_type, } } #else - mysqlnd_fetch_into(mysql_result, MYSQLND_FETCH_ASSOC, return_value, MYSQLND_MYSQL); + mysqlnd_fetch_into(mysql_result, ((result_type & MYSQL_NUM)? MYSQLND_FETCH_NUM:0) | ((result_type & MYSQL_ASSOC)? MYSQLND_FETCH_ASSOC:0), return_value, MYSQLND_MYSQL); #endif #ifdef ZEND_ENGINE_2 @@ -2071,7 +2071,7 @@ static void php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int result_type, Gets a result row as an enumerated array */ PHP_FUNCTION(mysql_fetch_row) { -#ifdef MYSQL_USE_MYSQLND +#if 1 MYSQL_RES *result; zval *mysql_result; @@ -2105,7 +2105,7 @@ PHP_FUNCTION(mysql_fetch_object) Fetch a result row as an array (associative, numeric or both) */ PHP_FUNCTION(mysql_fetch_array) { -#ifndef MYSQL_USE_MYSQLND +#if 1 php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, 0, 2, 0); #else MYSQL_RES *result; @@ -2132,7 +2132,7 @@ PHP_FUNCTION(mysql_fetch_array) Fetch a result row as an associative array */ PHP_FUNCTION(mysql_fetch_assoc) { -#ifndef MYSQL_USE_MYSQLND +#if 1 php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_ASSOC, 1, 0); #else MYSQL_RES *result; diff --git a/ext/mysqli/mysqli_api.c b/ext/mysqli/mysqli_api.c index 57cc3187a9..332d5df8b2 100644 --- a/ext/mysqli/mysqli_api.c +++ b/ext/mysqli/mysqli_api.c @@ -1148,18 +1148,7 @@ PHP_FUNCTION(mysqli_fetch_lengths) Get a result row as an enumerated array */ PHP_FUNCTION(mysqli_fetch_row) { -#if !defined(MYSQLI_USE_MYSQLND) php_mysqli_fetch_into_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQLI_NUM, 0); -#else - MYSQL_RES *result; - zval *mysql_result; - - if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O", &mysql_result, mysqli_result_class_entry) == FAILURE) { - return; - } - MYSQLI_FETCH_RESOURCE(result, MYSQL_RES *, &mysql_result, "mysqli_result", MYSQLI_STATUS_VALID); - mysqlnd_fetch_into(result, MYSQLND_FETCH_NUM, return_value, MYSQLND_MYSQLI); -#endif } /* }}} */ diff --git a/ext/mysqli/mysqli_nonapi.c b/ext/mysqli/mysqli_nonapi.c index 3267529b60..9c44c931d1 100644 --- a/ext/mysqli/mysqli_nonapi.c +++ b/ext/mysqli/mysqli_nonapi.c @@ -345,25 +345,7 @@ PHP_FUNCTION(mysqli_connect_error) Fetch a result row as an associative array, a numeric array, or both */ PHP_FUNCTION(mysqli_fetch_array) { -#if !defined(MYSQLI_USE_MYSQLND) php_mysqli_fetch_into_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, 0, 0); -#else - MYSQL_RES *result; - zval *mysql_result; - long mode = MYSQLND_FETCH_BOTH; - - if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O|l", &mysql_result, mysqli_result_class_entry, &mode) == FAILURE) { - return; - } - MYSQLI_FETCH_RESOURCE(result, MYSQL_RES *, &mysql_result, "mysqli_result", MYSQLI_STATUS_VALID); - - if (mode < MYSQLI_ASSOC || mode > MYSQLI_BOTH) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "The result type should be either MYSQLI_NUM, MYSQLI_ASSOC or MYSQLI_BOTH"); - RETURN_FALSE; - } - - mysqlnd_fetch_into(result, mode, return_value, MYSQLND_MYSQLI); -#endif } /* }}} */ @@ -371,19 +353,7 @@ PHP_FUNCTION(mysqli_fetch_array) Fetch a result row as an associative array */ PHP_FUNCTION(mysqli_fetch_assoc) { -#if !defined(MYSQLI_USE_MYSQLND) php_mysqli_fetch_into_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQLI_ASSOC, 0); -#else - MYSQL_RES *result; - zval *mysql_result; - - if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O", &mysql_result, mysqli_result_class_entry) == FAILURE) { - return; - } - MYSQLI_FETCH_RESOURCE(result, MYSQL_RES *, &mysql_result, "mysqli_result", MYSQLI_STATUS_VALID); - mysqlnd_fetch_into(result, MYSQLND_FETCH_ASSOC, return_value, MYSQLND_MYSQLI); - -#endif } /* }}} */ |