1. Getgdc函数

    discuz有一个超级变量的自定义函数:

     

    function getgpc($k, $type='GP') {

        $type = strtoupper($type);

        switch($type) {

            case 'G': $var = &$_GET; break;

            case 'P': $var = &$_POST; break;

            case 'C': $var = &$_COOKIE; break;

            default:

                if(isset($_GET[$k])) {

                    $var = &$_GET;

                } else {

                    $var = &$_POST;

                }

                break;

        }

     

        return isset($var[$k]) ? $var[$k] : NULL; //注意这里没有设置的时候返回的是NULL.

    }

     

    这里我讲一下,比如你要获取$_GET['odaboy']的值,那么你只要这么调用getgpc('odaboy','G'),同时你也可以这样getgpc('odaboy')这种默认接受GET和POST,

    这个函数在function_core.php文件里面

     

  2. 获取ip地址

        private function _get_client_ip() {

            $ip = $_SERVER['REMOTE_ADDR'];

            if (isset($_SERVER['HTTP_CLIENT_IP']) && preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/', $_SERVER['HTTP_CLIENT_IP'])) {

                $ip = $_SERVER['HTTP_CLIENT_IP'];

            } elseif(isset($_SERVER['HTTP_X_FORWARDED_FOR']) AND preg_match_all('#\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}#s', $_SERVER['HTTP_X_FORWARDED_FOR'], $matches)) {

                foreach ($matches[0] AS $xip) {

                    if (!preg_match('#^(10|172\.16|192\.168)\.#', $xip)) {

                        $ip = $xip;

                        break;

                    }

                }

            }

            return $ip;

        }

     

    不过这样有风险,给了客户端伪造ip的机会。具体看这篇文章:

    http://www.cnblogs.com/kingthy/archive/2007/11/24/970783.html

最新文章

  1. win10本地搭建apache+php+mysql运行环境
  2. 安装win8、ubuntu双系统的过程
  3. java日期和字符串的相互转换
  4. JDBC操作Oracle数据库
  5. Cache和Buffer的区别
  6. java学习笔记3
  7. 对Cookie进行增删改查
  8. 开发板-PC机(宿主机)-虚拟机(VM)之间网络通信设置方法及须要注意的问题
  9. Unity Notes调制粒子系统的颗粒的最大数目
  10. mplayer最全的命令
  11. 爬虫:把廖雪峰的教程转换成 PDF 电子书
  12. sprintf的用法
  13. dubbo调用负载均衡
  14. Python内置函数(23)——dict
  15. MRPT 安装使用
  16. iOS 新浪微博-1.1框架升级
  17. HDU 5468 Puzzled Elena (dfs + 莫比乌斯反演)
  18. JavaScript -- Window-Blur
  19. Kernel 4.9的BBR拥塞控制算法与锐速
  20. Car 加油

热门文章

  1. CentOS7.4 关闭firewall防火墙,改用iptables
  2. BZOJ 3130: [Sdoi2013]费用流 网络流 二分 最大流
  3. hdu 1973 bfs+素数判断
  4. 【POJ】2796:Feel Good【单调栈】
  5. Gunicorn配置部分的翻译
  6. 安卓中WebKit的使用
  7. php curl 发送get和post请求示例
  8. BZOJ 1854: [Scoi2010]游戏 并查集
  9. Xcode 中的IOS工程模板
  10. git push时提示"Everything up-to-date"