zoukankan      html  css  js  c++  java
  • discuz $_G变量

    class.core.php中

            global $_G;
            $_G = array(
                'uid' => 0,
                'username' => '',
                'adminid' => 0,
                'groupid' => 1,
                'sid' => '',
                'formhash' => '',
                'timestamp' => TIMESTAMP,
                'starttime' => dmicrotime(),
                'clientip' => $this->_get_client_ip(),
                'referer' => '',
                'charset' => '',
                'gzipcompress' => '',
                'authkey' => '',
                'timenow' => array(),

                'PHP_SELF' => '',
                'siteurl' => '',
                'siteroot' => '',
                'siteport' => '',

                'config' => array(),
                'setting' => array(),
                'member' => array(),
                'group' => array(),
                'cookie' => array(),
                'style' => array(),
                'cache' => array(),
                'session' => array(),
                'lang' => array(),
                'my_app' => array(),
                'my_userapp' => array(),

                'fid' => 0,
                'tid' => 0,
                'forum' => array(),
                'thread' => array(),
                'rssauth' => '',

                'home' => array(),
                'space' => array(),

                'block' => array(),
                'article' => array(),

                'action' => array(
                    'action' => APPTYPEID,
                    'fid' => 0,
                    'tid' => 0,
                ),

                'mobile' => '',

            );

            $this->var = & $_G;  //重点,全文都是利用var进行赋植

    还有就是MAGIC_QUOTES_GPC是否开启,加转义

            if(!MAGIC_QUOTES_GPC) {
                $_GET = daddslashes($_GET);
                $_POST = daddslashes($_POST);
                $_COOKIE = daddslashes($_COOKIE);
                $_FILES = daddslashes($_FILES);
            }

            $prelength = strlen($this->config['cookie']['cookiepre']);
            foreach($_COOKIE as $key => $val) {
                if(substr($key, 0, $prelength) == $this->config['cookie']['cookiepre']) {
                    $this->var['cookie'][substr($key, $prelength)] = $val;
                }
            }


            if($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($_POST)) {
                $_GET = array_merge($_GET, $_POST);
            }

            foreach($_GET as $k => $v) {
                $this->var['gp_'.$k] = $v;   //所以其他脚本使用变量时,都有gp_
            }

  • 相关阅读:
    VS2017常用快捷键
    浅谈JS之setTimeout与setInterval
    你真的了解foreach吗?
    IEnumerable和IEnumerator详解
    Cesium坐标系及坐标转换详解
    NPM常用指令
    ASP.NET Web API 2系列(三):查看WebAPI接口的详细说明及测试接口
    【nginx】安装nginx
    【redis】本地连接服务器的redis教程
    Mysql5.7及以上版本 ONLY_FULL_GROUP_BY报错的解决方法
  • 原文地址:https://www.cnblogs.com/agang-php/p/4230916.html
Copyright © 2011-2022 走看看