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);