为了使自己的程序在不同的平台中拥有更好的兼容性,很多时候我们都要获取当前Php的运行环境参数。比如我们常用到的:获取magic_quotes_gpc状态,来决定当表单提交时我们是否转义(addslashes)数据;设定max_execution_time来延长程序的执行时间;设定error_reporting使自己的项目在开发与运营阶段切换;设定memory_limit加大内存等等…
ini_set(string varname, string newvalue ) : 设定环境配置的参数
ini_get(string varname) : 获取环境配置的参数
参数列表如下 Name Default Changeable com.allow_dcom "0" PHP_INI_SYSTEM com.autoregister_typelib "0" PHP_INI_SYSTEM com.autoregister_verbose "0" PHP_INI_SYSTEM com.autoregister_casesensitive "1" PHP_INI_SYSTEM com.typelib_file "" PHP_INI_SYSTEM crack.default_dictionary NULL PHP_INI_SYSTEM exif.encode_unicode "ISO-8859-15" PHP_INI_ALL exif.decode_unicode_motorola "UCS-2BE" PHP_INI_ALL exif.decode_unicode_intel "UCS-2LE" PHP_INI_ALL exif.encode_jis "" PHP_INI_ALL exif.decode_jis_motorola "JIS" PHP_INI_ALL exif.decode_jis_intel "JIS" PHP_INI_ALL fbsql.allow_persistent "1" PHP_INI_SYSTEM fbsql.generate_warnings "0" PHP_INI_SYSTEM fbsql.autocommit "1" PHP_INI_SYSTEM fbsql.max_persistent "-1" PHP_INI_SYSTEM fbsql.max_links "128" PHP_INI_SYSTEM fbsql.max_connections "128" PHP_INI_SYSTEM fbsql.max_results "128" PHP_INI_SYSTEM fbsql.batchSize "1000" PHP_INI_SYSTEM fbsql.default_host NULL PHP_INI_SYSTEM fbsql.default_user "_SYSTEM" PHP_INI_SYSTEM fbsql.default_password "" PHP_INI_SYSTEM fbsql.default_database "" PHP_INI_SYSTEM fbsql.default_database_password "" PHP_INI_SYSTEM hwapi.allow_persistent "0" PHP_INI_SYSTEM hyperwave.allow_persistent "0" PHP_INI_SYSTEM hyperwave.default_port "418" PHP_INI_ALL iconv.input_encoding ICONV_INPUT_ENCODING PHP_INI_ALL iconv.output_encoding ICONV_OUTPUT_ENCODING PHP_INI_ALL iconv.internal_encoding ICONV_INTERNAL_ENCODING PHP_INI_ALL ifx.allow_persistent "1" PHP_INI_SYSTEM ifx.max_persistent "-1" PHP_INI_SYSTEM ifx.max_links "-1" PHP_INI_SYSTEM ifx.default_host NULL PHP_INI_SYSTEM ifx.default_user NULL PHP_INI_SYSTEM ifx.default_password NULL PHP_INI_SYSTEM ifx.blobinfile "1" PHP_INI_ALL ifx.textasvarchar "0" PHP_INI_ALL ifx.byteasvarchar "0" PHP_INI_ALL ifx.charasvarchar "0" PHP_INI_ALL ifx.nullformat "0" PHP_INI_ALL ingres.allow_persistent "1" PHP_INI_SYSTEM ingres.max_persistent "-1" PHP_INI_SYSTEM ingres.max_links "-1" PHP_INI_SYSTEM ingres.default_database NULL PHP_INI_ALL ingres.default_user NULL PHP_INI_ALL ingres.default_password NULL PHP_INI_ALL ibase.allow_persistent "1" PHP_INI_SYSTEM ibase.max_persistent "-1" PHP_INI_SYSTEM ibase.max_links "-1" PHP_INI_SYSTEM ibase.default_user NULL PHP_INI_ALL ibase.default_password NULL PHP_INI_ALL ibase.timestampformat "%m/%d/%Y%H:%M:%S" PHP_INI_ALL ibase.dateformat "%m/%d/%Y" PHP_INI_ALL ibase.timeformat "%H:%M:%S" PHP_INI_ALL java.class.path NULL PHP_INI_ALL java.home NULL PHP_INI_ALL java.library.path NULL PHP_INI_ALL java.library JAVALIB PHP_INI_ALL java.library NULL PHP_INI_ALL ldap.max_links "-1" PHP_INI_SYSTEM mbstring.detect_order NULL PHP_INI_ALL mbstring.http_input NULL PHP_INI_ALL mbstring.http_output NULL PHP_INI_ALL mbstring.internal_encoding NULL PHP_INI_ALL mbstring.substitute_character NULL PHP_INI_ALL mbstring.func_overload "0" PHP_INI_SYSTEM mcrypt.algorithms_dir NULL PHP_INI_ALL mcrypt.modes_dir NULL PHP_INI_ALL mime_magic.magicfile "/usr/share/misc/magic.mime" PHP_INI_SYSTEM mssql.allow_persistent "1" PHP_INI_SYSTEM mssql.max_persistent "-1" PHP_INI_SYSTEM mssql.max_links "-1" PHP_INI_SYSTEM mssql.max_procs "25" PHP_INI_ALL mssql.min_error_severity "10" PHP_INI_ALL mssql.min_message_severity "10" PHP_INI_ALL mssql.compatability_mode "0" PHP_INI_ALL mssql.connect_timeout "5" PHP_INI_ALL mssql.timeout "60" PHP_INI_ALL mssql.textsize "-1" PHP_INI_ALL mssql.textlimit "-1" PHP_INI_ALL mssql.batchsize "0" PHP_INI_ALL mssql.datetimeconvert "1" PHP_INI_ALL mssql.secure_connection "0" PHP_INI_SYSTEM mysql.allow_persistent "1" PHP_INI_SYSTEM mysql.max_persistent "-1" PHP_INI_SYSTEM mysql.max_links "-1" PHP_INI_SYSTEM mysql.default_host NULL PHP_INI_ALL mysql.default_user NULL PHP_INI_ALL mysql.default_password NULL PHP_INI_ALL mysql.default_port NULL PHP_INI_ALL mysql.default_socket NULL PHP_INI_ALL ncurses.value "42" PHP_INI_ALL ncurses.string "foobar" PHP_INI_ALL odbc.allow_persistent "1" PHP_INI_SYSTEM odbc.max_persistent "-1" PHP_INI_SYSTEM odbc.max_links "-1" PHP_INI_SYSTEM odbc.default_db NULL PHP_INI_ALL odbc.default_user NULL PHP_INI_ALL odbc.default_pw NULL PHP_INI_ALL odbc.defaultlrl "4096" PHP_INI_ALL odbc.defaultbinmode "1" PHP_INI_ALL odbc.check_persistent "1" PHP_INI_SYSTEM pfpro.defaulthost "test.signio.com" pfpro.defaulthost "test-payflow.verisign.com" pfpro.defaultport "443" PHP_INI_ALL pfpro.defaulttimeout "30" PHP_INI_ALL pfpro.proxyaddress "" PHP_INI_ALL pfpro.proxyport "" PHP_INI_ALL pfpro.proxylogon "" PHP_INI_ALL pfpro.proxypassword "" PHP_INI_ALL pgsql.allow_persistent "1" PHP_INI_SYSTEM pgsql.max_persistent "-1" PHP_INI_SYSTEM pgsql.max_links "-1" PHP_INI_SYSTEM pgsql.auto_reset_persistent "0" PHP_INI_SYSTEM pgsql.ignore_notice "0" PHP_INI_ALL pgsql.log_notice "0" PHP_INI_ALL session.save_path "/tmp" PHP_INI_ALL session.name "PHPSESSID" PHP_INI_ALL session.save_handler "files" PHP_INI_ALL session.auto_start "0" PHP_INI_ALL session.gc_probability "1" PHP_INI_ALL session.gc_divisor "100" PHP_INI_ALL session.gc_maxlifetime "1440" PHP_INI_ALL session.serialize_handler "php" PHP_INI_ALL session.cookie_lifetime "0" PHP_INI_ALL session.cookie_path "/" PHP_INI_ALL session.cookie_domain "" PHP_INI_ALL session.cookie_secure "" PHP_INI_ALL session.use_cookies "1" PHP_INI_ALL session.use_only_cookies "0" PHP_INI_ALL session.referer_check "" PHP_INI_ALL session.entropy_file "" PHP_INI_ALL session.entropy_length "0" PHP_INI_ALL session.cache_limiter "nocache" PHP_INI_ALL session.cache_expire "180" PHP_INI_ALL session.use_trans_sid "0" PHP_INI_SYSTEM可操作范围见下表:
操作范围 Constant Value Meaning PHP_INI_USER 1 Entry can be set in user scripts PHP_INI_PERDIR 2 Entry can be set in php.ini, .htaccess or httpd.conf PHP_INI_SYSTEM 4 Entry can be set in php.ini or httpd.conf PHP_INI_ALL 7 Entry can be set anywhere