filter_input() 函数从脚本外部获取输入,并进行过滤。
本函数用于对来自非安全来源的变量进行验证,比如用户的输入。
本函数可从各种来源获取输入:
- INPUT_GET
- INPUT_POST
- INPUT_COOKIE
- INPUT_ENV
- INPUT_SERVER
- INPUT_SESSION (Not yet implemented)
- INPUT_REQUEST (Not yet implemented)
如果成功,则返回被过滤的数据,如果失败,则返回 false,如果 variable 参数未设置,则返回 NULL。
例如我们常常使用$_POST[‘id’]获取input中name=id的value
也可使用
filter_input(‘INPUT_POST‘,id),get和cookie都不多说了。说下ENV吧?有的会说ENV是神吗?
$_ENV(很少人用到的一个环境变量,因为环境不同而不同)
你可使用print_r($_ENV)查看具体内容,但是~~~有可能是空的哦,那是因为你的php.ini配置中
variables_order = “GPCS”
而GPCS是代表GET/POST/COOKIE/SERVER
你修改成variables_order = “EGPCS”就可查看环境变量了
贴出来我的电脑上环境使用print_r($_ENV)结果是
[APACHE_RUN_DIR] => /var/run/apache2
[APACHE_PID_FILE] => /var/run/apache2.pid
[PATH] => /usr/local/bin:/usr/bin:/bin
[APACHE_LOCK_DIR] => /var/lock/apache2
[LANG] => C
[APACHE_RUN_GROUP] => www-data
[APACHE_RUN_USER] => www-data
[APACHE_LOG_DIR] => /var/log/apache2
[PWD] => /root
然后再继续回到$_SERVER上(虽然有的还看不懂,但是贴出来以后慢慢分析)
[HTTP_HOST] => zendstudy
[HTTP_CONNECTION] => keep-alive
[HTTP_CACHE_CONTROL] => max-age=0
[HTTP_USER_AGENT] => Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.94 Safari/537.4
[HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
[HTTP_ACCEPT_ENCODING] => gzip,deflate,sdch
[HTTP_ACCEPT_LANGUAGE] => zh-CN,zh;q=0.8
[HTTP_ACCEPT_CHARSET] => GBK,utf-8;q=0.7,*;q=0.3
[PATH] => /usr/local/bin:/usr/bin:/bin
[SERVER_SIGNATURE] => <address>Apache Server at zendstudy Port 80</address>
[SERVER_SOFTWARE] => Apache
[SERVER_NAME] => zendstudy
[SERVER_ADDR] => 127.0.0.1
[SERVER_PORT] => 80
[REMOTE_ADDR] => 127.0.0.1
[DOCUMENT_ROOT] => /var/www/zendstudy/public
[SERVER_ADMIN] => [no address given]
[SCRIPT_FILENAME] => /var/www/zendstudy/public/index.php
[REMOTE_PORT] => 33639
[GATEWAY_INTERFACE] => CGI/1.1
[SERVER_PROTOCOL] => HTTP/1.1
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /
[SCRIPT_NAME] => /index.php
[PHP_SELF] => /index.php
[REQUEST_TIME] => 1358257020
$_REQUEST(使用GET或者POST的都可以使用这个获取到,为何不用呢?这个速度比较慢,所有一般不用的~)