0 Comments

爬行的蜗牛dede(织梦)41讲-if(!defined('DEDEINC')) exit("Request Error!");

发布于:2015-05-20  |   作者:爬行的蜗牛  |   已聚集:人围观

 爬行的蜗牛最近研究织梦自定义标签,看到几个标签里面有if(!defined('DEDEINC')) exit("Request Error!");这一段话,没理解是啥意思,所以就谷歌了一下。
     if(!defined('DEDEINC')) exit("Request Error!");
     细细看看你就会发现,这句代码一般都是在 /include 路径下的php文件里边,为什么 dede 路径下的php文件没有呢?因为 include 路径下的文件是 类文件,也就是 方法文件 ,是以后要被 require_once 引入的文件,MVC模式中的 M .这些文件是不需要 在浏览器中运行的 

     测试代码1:
     if(!defined('DEDEINC')){
    exit("Request Error!");
    }
    else{
    echo "爬行的蜗牛";
    }

   很明显,运行php会输出 Request Error!

  测试代码2:

   require_once (dirname(__FILE__) . "/common.inc.php");
      if(!defined('DEDEINC')){
      exit("Request Error!");
     }
     else{
    echo "爬行的蜗牛";
    }
    当引入了 common.inc.php 之后 就会输出 爬行的蜗牛.总之,这句话的目的就是不想让恶意攻击者或者客户来访问你的类文件,因为类文件是要被引用到其他php文件中的.
    define('DEBUG',true);  //在开发时,声明一个DEBUG模式  
   if(defined('DEBUG')){  //检测处于开发模式
    error_reporting(E_ALL);
   }else{
    error_reporting(E_ALL || ~E_NOTICE); //检测处于发布模式
   }
     织梦的 common.inc.php 页面也有报错级别设定
    // 报错级别设定,一般在开发环境中用E_ALL,这样能够看到所有错误提示
    // 系统正常运行后,直接设定为E_ALL || ~E_NOTICE,取消错误显示
    //error_reporting(E_ALL);
    error_reporting(E_ALL || ~E_NOTICE);

   爬行的蜗牛:http://www.pxwoniu.com/dede/94.html
飞机

扫描二维码,访问爬行的蜗牛手机网站

在线咨询