mirror of
https://github.com/php/php-src.git
synced 2025-08-15 21:48:51 +02:00
New result fetching mode for mysqlnd, which should use less memory but
implies more memory copy. The old method is still available and can be used. It stays as default. Choosing the method is through a flag to mysqli_query()/mysqli_real_query() New mode can be forced with an INI setting, for all extensions that support this mode (ext/mysql and mysqli, because PDO due to it's architecture can't support it) The setting is mysqlnd.fetch_data_copy=[0|1]
This commit is contained in:
parent
973f379efc
commit
63791d055a
44 changed files with 1827 additions and 397 deletions
|
@ -68,7 +68,7 @@ mysqlnd_reverse_api_register_api(MYSQLND_REVERSE_API * apiext TSRMLS_DC)
|
|||
|
||||
/* {{{ zval_to_mysqlnd */
|
||||
PHPAPI MYSQLND *
|
||||
zval_to_mysqlnd(zval * zv TSRMLS_DC)
|
||||
zval_to_mysqlnd(zval * zv, const unsigned int client_api_capabilities, unsigned int * save_client_api_capabilities TSRMLS_DC)
|
||||
{
|
||||
MYSQLND * retval;
|
||||
MYSQLND_REVERSE_API ** elem;
|
||||
|
@ -80,6 +80,9 @@ zval_to_mysqlnd(zval * zv TSRMLS_DC)
|
|||
if ((*elem)->conversion_cb) {
|
||||
retval = (*elem)->conversion_cb(zv TSRMLS_CC);
|
||||
if (retval) {
|
||||
if (retval->data) {
|
||||
*save_client_api_capabilities = retval->data->m->negotiate_client_api_capabilities(retval->data, client_api_capabilities TSRMLS_CC);
|
||||
}
|
||||
return retval;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue