From: Andrei Zmievski Date: Mon, 8 Jan 2001 20:57:59 +0000 (+0000) Subject: @- Changed extract() to return the number of variables extracted. (Andrei) X-Git-Tag: php-4.0.5RC1~664 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=74175e429d160bef4a020fea76781fc6b6ad9c38;p=php @- Changed extract() to return the number of variables extracted. (Andrei) --- diff --git a/ext/standard/array.c b/ext/standard/array.c index dad26ba590..c4c115eb32 100644 --- a/ext/standard/array.c +++ b/ext/standard/array.c @@ -1109,7 +1109,7 @@ static int _valid_var_name(char *varname) /* }}} */ -/* {{{ proto void extract(array var_array, int extract_type [, string prefix]) +/* {{{ proto int extract(array var_array, int extract_type [, string prefix]) Imports variables into symbol table from an array */ PHP_FUNCTION(extract) { @@ -1117,7 +1117,7 @@ PHP_FUNCTION(extract) zval **entry, *data; char *varname, *finalname; ulong lkey; - int res, extype; + int res, extype, count = 0; switch(ZEND_NUM_ARGS()) { case 1: @@ -1203,12 +1203,16 @@ PHP_FUNCTION(extract) ZEND_SET_SYMBOL(EG(active_symbol_table), finalname, data); efree(finalname); + + count++; } } } zend_hash_move_forward(Z_ARRVAL_PP(var_array)); } + + RETURN_LONG(count); } /* }}} */