xref: /PHP-7.1/main/php_ini.h (revision ccd4716e)
1 /*
2    +----------------------------------------------------------------------+
3    | PHP Version 7                                                        |
4    +----------------------------------------------------------------------+
5    | Copyright (c) 1997-2018 The PHP Group                                |
6    +----------------------------------------------------------------------+
7    | This source file is subject to version 3.01 of the PHP license,      |
8    | that is bundled with this package in the file LICENSE, and is        |
9    | available through the world-wide-web at the following url:           |
10    | http://www.php.net/license/3_01.txt                                  |
11    | If you did not receive a copy of the PHP license and are unable to   |
12    | obtain it through the world-wide-web, please send a note to          |
13    | license@php.net so we can mail you a copy immediately.               |
14    +----------------------------------------------------------------------+
15    | Author: Zeev Suraski <zeev@zend.com>                                 |
16    +----------------------------------------------------------------------+
17 */
18 
19 /* $Id$ */
20 
21 #ifndef PHP_INI_H
22 #define PHP_INI_H
23 
24 #include "zend_ini.h"
25 
26 BEGIN_EXTERN_C()
27 PHPAPI void config_zval_dtor(zval *zvalue);
28 int php_init_config(void);
29 int php_shutdown_config(void);
30 void php_ini_register_extensions(void);
31 PHPAPI zval *cfg_get_entry_ex(zend_string *name);
32 PHPAPI zval *cfg_get_entry(const char *name, size_t name_length);
33 PHPAPI int cfg_get_long(const char *varname, zend_long *result);
34 PHPAPI int cfg_get_double(const char *varname, double *result);
35 PHPAPI int cfg_get_string(const char *varname, char **result);
36 PHPAPI int php_parse_user_ini_file(const char *dirname, char *ini_filename, HashTable *target_hash);
37 PHPAPI void php_ini_activate_config(HashTable *source_hash, int modify_type, int stage);
38 PHPAPI int php_ini_has_per_dir_config(void);
39 PHPAPI int php_ini_has_per_host_config(void);
40 PHPAPI void php_ini_activate_per_dir_config(char *path, size_t path_len);
41 PHPAPI void php_ini_activate_per_host_config(const char *host, size_t host_len);
42 PHPAPI HashTable* php_ini_get_configuration_hash(void);
43 END_EXTERN_C()
44 
45 #define PHP_INI_USER	ZEND_INI_USER
46 #define PHP_INI_PERDIR	ZEND_INI_PERDIR
47 #define PHP_INI_SYSTEM	ZEND_INI_SYSTEM
48 
49 #define PHP_INI_ALL 	ZEND_INI_ALL
50 
51 #define php_ini_entry	zend_ini_entry
52 
53 #define PHP_INI_MH		ZEND_INI_MH
54 #define PHP_INI_DISP	ZEND_INI_DISP
55 
56 #define PHP_INI_BEGIN		ZEND_INI_BEGIN
57 #define PHP_INI_END			ZEND_INI_END
58 
59 #define PHP_INI_ENTRY3_EX	ZEND_INI_ENTRY3_EX
60 #define PHP_INI_ENTRY3		ZEND_INI_ENTRY3
61 #define PHP_INI_ENTRY2_EX	ZEND_INI_ENTRY2_EX
62 #define PHP_INI_ENTRY2		ZEND_INI_ENTRY2
63 #define PHP_INI_ENTRY1_EX	ZEND_INI_ENTRY1_EX
64 #define PHP_INI_ENTRY1		ZEND_INI_ENTRY1
65 #define PHP_INI_ENTRY_EX	ZEND_INI_ENTRY_EX
66 #define PHP_INI_ENTRY		ZEND_INI_ENTRY
67 
68 #define STD_PHP_INI_ENTRY		STD_ZEND_INI_ENTRY
69 #define STD_PHP_INI_ENTRY_EX	STD_ZEND_INI_ENTRY_EX
70 #define STD_PHP_INI_BOOLEAN		STD_ZEND_INI_BOOLEAN
71 
72 #define PHP_INI_DISPLAY_ORIG	ZEND_INI_DISPLAY_ORIG
73 #define PHP_INI_DISPLAY_ACTIVE	ZEND_INI_DISPLAY_ACTIVE
74 
75 #define PHP_INI_STAGE_STARTUP		ZEND_INI_STAGE_STARTUP
76 #define PHP_INI_STAGE_SHUTDOWN		ZEND_INI_STAGE_SHUTDOWN
77 #define PHP_INI_STAGE_ACTIVATE		ZEND_INI_STAGE_ACTIVATE
78 #define PHP_INI_STAGE_DEACTIVATE	ZEND_INI_STAGE_DEACTIVATE
79 #define PHP_INI_STAGE_RUNTIME		ZEND_INI_STAGE_RUNTIME
80 #define PHP_INI_STAGE_HTACCESS		ZEND_INI_STAGE_HTACCESS
81 
82 #define php_ini_boolean_displayer_cb	zend_ini_boolean_displayer_cb
83 #define php_ini_color_displayer_cb		zend_ini_color_displayer_cb
84 
85 #define php_alter_ini_entry		zend_alter_ini_entry
86 
87 #define php_ini_long	zend_ini_long
88 #define php_ini_double	zend_ini_double
89 #define php_ini_string	zend_ini_string
90 
91 #endif /* PHP_INI_H */
92