bjori Mon Apr 14 15:32:43 2008 UTC Modified files: (Branch: PHP_5_3) /php-src/ext/standard/tests/general_functions ini_get_all.phpt /php-src/ext/standard basic_functions.c basic_functions.h Log: [DOC] Remove config_get_hash() & and add new boolean parameter to ini_get_all() to list ini entries key=>current_value like config_get_hash() did. http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/general_functions/ini_get_all.phpt?r1=1.1.2.2.2.1&r2=1.1.2.2.2.2&diff_format=u Index: php-src/ext/standard/tests/general_functions/ini_get_all.phpt diff -u php-src/ext/standard/tests/general_functions/ini_get_all.phpt:1.1.2.2.2.1 php-src/ext/standard/tests/general_functions/ini_get_all.phpt:1.1.2.2.2.2 --- php-src/ext/standard/tests/general_functions/ini_get_all.phpt:1.1.2.2.2.1 Mon Oct 1 12:40:54 2007 +++ php-src/ext/standard/tests/general_functions/ini_get_all.phpt Mon Apr 14 15:32:42 2008 @@ -1,5 +1,8 @@ --TEST-- ini_get_all() tests +--INI-- +pcre.backtrack_limit=100000 +pcre.recursion_limit=100000 --SKIPIF-- <?php if (!extension_loaded("reflection")) die("skip"); ?> --FILE-- @@ -10,6 +13,8 @@ var_dump(ini_get_all("nosuchextension")); var_dump(ini_get_all("reflection")); var_dump(ini_get_all("pcre")); +var_dump(ini_get_all("pcre", false)); +var_dump(ini_get_all("reflection", false)); var_dump(ini_get_all("", "")); @@ -45,7 +50,15 @@ int(7) } } +array(2) { + ["pcre.backtrack_limit"]=> + string(6) "100000" + ["pcre.recursion_limit"]=> + string(6) "100000" +} +array(0) { +} -Warning: ini_get_all() expects at most 1 parameter, 2 given in %s on line %d -NULL +Warning: ini_get_all(): Unable to find extension '' in %sini_get_all.php on line %d +bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/standard/basic_functions.c?r1=1.725.2.31.2.64.2.24&r2=1.725.2.31.2.64.2.25&diff_format=u Index: php-src/ext/standard/basic_functions.c diff -u php-src/ext/standard/basic_functions.c:1.725.2.31.2.64.2.24 php-src/ext/standard/basic_functions.c:1.725.2.31.2.64.2.25 --- php-src/ext/standard/basic_functions.c:1.725.2.31.2.64.2.24 Mon Apr 7 10:44:59 2008 +++ php-src/ext/standard/basic_functions.c Mon Apr 14 15:32:42 2008 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: basic_functions.c,v 1.725.2.31.2.64.2.24 2008/04/07 10:44:59 colder Exp $ */ +/* $Id: basic_functions.c,v 1.725.2.31.2.64.2.25 2008/04/14 15:32:42 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -959,10 +959,6 @@ ZEND_END_ARG_INFO() static -ZEND_BEGIN_ARG_INFO(arginfo_config_get_hash, 0) -ZEND_END_ARG_INFO() - -static ZEND_BEGIN_ARG_INFO_EX(arginfo_import_request_variables, 0, 0, 1) ZEND_ARG_INFO(0, types) ZEND_ARG_INFO(0, prefix) @@ -3417,7 +3413,6 @@ PHP_FE(connection_status, arginfo_connection_status) PHP_FE(ignore_user_abort, arginfo_ignore_user_abort) PHP_FE(parse_ini_file, arginfo_parse_ini_file) - PHP_FE(config_get_hash, arginfo_config_get_hash) PHP_FE(is_uploaded_file, arginfo_is_uploaded_file) PHP_FE(move_uploaded_file, arginfo_move_uploaded_file) @@ -5663,6 +5658,7 @@ { zval *ini_array = va_arg(args, zval *); int module_number = va_arg(args, int); + int details = va_arg(args, int); zval *option; if (module_number != 0 && ini_entry->module_number != module_number) { @@ -5672,40 +5668,49 @@ if (hash_key->nKeyLength == 0 || hash_key->arKey[0] != 0 ) { - MAKE_STD_ZVAL(option); - array_init(option); + if (details) { + MAKE_STD_ZVAL(option); + array_init(option); + + if (ini_entry->orig_value) { + add_assoc_stringl(option, "global_value", ini_entry->orig_value, ini_entry->orig_value_length, 1); + } else if (ini_entry->value) { + add_assoc_stringl(option, "global_value", ini_entry->value, ini_entry->value_length, 1); + } else { + add_assoc_null(option, "global_value"); + } - if (ini_entry->orig_value) { - add_assoc_stringl(option, "global_value", ini_entry->orig_value, ini_entry->orig_value_length, 1); - } else if (ini_entry->value) { - add_assoc_stringl(option, "global_value", ini_entry->value, ini_entry->value_length, 1); - } else { - add_assoc_null(option, "global_value"); - } + if (ini_entry->value) { + add_assoc_stringl(option, "local_value", ini_entry->value, ini_entry->value_length, 1); + } else { + add_assoc_null(option, "local_value"); + } + + add_assoc_long(option, "access", ini_entry->modifiable); - if (ini_entry->value) { - add_assoc_stringl(option, "local_value", ini_entry->value, ini_entry->value_length, 1); + add_assoc_zval_ex(ini_array, ini_entry->name, ini_entry->name_length, option); } else { - add_assoc_null(option, "local_value"); + if (ini_entry->value) { + add_assoc_stringl(ini_array, ini_entry->name, ini_entry->value, ini_entry->value_length, 1); + } else { + add_assoc_null(ini_array, ini_entry->name); + } } - - add_assoc_long(option, "access", ini_entry->modifiable); - - add_assoc_zval_ex(ini_array, ini_entry->name, ini_entry->name_length, option); } return 0; } /* }}} */ -/* {{{ proto array ini_get_all([string extension]) +/* {{{ proto array ini_get_all([string extension[, bool details = true]]) Get all configuration options */ PHP_FUNCTION(ini_get_all) { char *extname = NULL; int extname_len = 0, extnumber = 0; zend_module_entry *module; + zend_bool details = 1; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|s", &extname, &extname_len) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|s!b", &extname, &extname_len, &details) == FAILURE) { return; } @@ -5720,7 +5725,7 @@ } array_init(return_value); - zend_hash_apply_with_arguments(EG(ini_directives), (apply_func_args_t) php_ini_get_option, 2, return_value, extnumber TSRMLS_CC); + zend_hash_apply_with_arguments(EG(ini_directives), (apply_func_args_t) php_ini_get_option, 2, return_value, extnumber, details TSRMLS_CC); } /* }}} */ @@ -6315,17 +6320,6 @@ } /* }}} */ -/* {{{ proto array config_get_hash(void) - Return all configuration valus as an array */ -PHP_FUNCTION(config_get_hash) -{ - HashTable *hash = php_ini_get_configuration_hash(); - - array_init(return_value); - zend_hash_apply_with_arguments(hash, (apply_func_args_t) add_config_entry_cb, 1, return_value TSRMLS_CC); -} -/* }}} */ - static int copy_request_variable(void *pDest, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { zval *prefix, new_key; http://cvs.php.net/viewvc.cgi/php-src/ext/standard/basic_functions.h?r1=1.139.2.4.2.6.2.7&r2=1.139.2.4.2.6.2.8&diff_format=u Index: php-src/ext/standard/basic_functions.h diff -u php-src/ext/standard/basic_functions.h:1.139.2.4.2.6.2.7 php-src/ext/standard/basic_functions.h:1.139.2.4.2.6.2.8 --- php-src/ext/standard/basic_functions.h:1.139.2.4.2.6.2.7 Mon Apr 7 10:44:59 2008 +++ php-src/ext/standard/basic_functions.h Mon Apr 14 15:32:42 2008 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: basic_functions.h,v 1.139.2.4.2.6.2.7 2008/04/07 10:44:59 colder Exp $ */ +/* $Id: basic_functions.h,v 1.139.2.4.2.6.2.8 2008/04/14 15:32:42 bjori Exp $ */ #ifndef BASIC_FUNCTIONS_H #define BASIC_FUNCTIONS_H @@ -127,7 +127,6 @@ /* From the INI parser */ PHP_FUNCTION(parse_ini_file); -PHP_FUNCTION(config_get_hash); PHP_FUNCTION(str_rot13); PHP_FUNCTION(stream_get_filters);
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php