小编给大家分享一下ecshop调试模式参数DEBUG_MODE怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
10年积累的网站设计制作、做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有东宝免费网站建设让你可以放心的选择与我们合作。找到ecshop源码根目录下的data/config.php文件,在文件尾部加入:
define('DEBUG_MODE', 0);
其中参数如下,如果要配置多个参数,则写相加的值
0 //禁用调试调试
1 //显示所有错误
2 //禁用Smarty缓存
4 //使用includes/lib.debug.php
8 //记录查询的SQL到data目录下以mysql_query_开头的文件
为
方便开发调式
,显示所有的错误信息和禁用SMARTY缓存。
define('DEBUG_MODE', 3); // 3=1+2
各参数原理说明
1)禁用调试模式,不显示错误信息
if (defined('DEBUG_MODE') == false) { define('DEBUG_MODE', 0); }
默认设置为关闭错误和不记录错误日志,启用smarty缓存,生产环境使用。
2)显示所有错误信息
在includes/init.php文件最后找到:
if ((DEBUG_MODE & 1) == 1) { error_reporting(E_ALL); } else { error_reporting(E_ALL ^ (E_NOTICE | E_WARNING)); }
如果位运算成立,则开启全部错误信息,不成立则天启除E_NOTICE、E_WARNING级别外的全部错误信息
3)禁用Smarty缓存
在前台功能php文件中,如index.php、goods.php、category.php等,都有:
if ((DEBUG_MODE & 2) != 2) { $smarty->caching = true; }
如果位运算条件成立,则开启smarty的缓存。
4)使用includes/lib.debug.php来调试
if ((DEBUG_MODE & 4) == 4) { include(ROOT_PATH . 'includes/lib.debug.php'); }
如果位运算条件成立,则引入文件lib_debug.php来调试错误信息。
5)记录查询的SQL到指定文件中
在includes/cls_mysql.php文件query方法中
if (defined('DEBUG_MODE') && (DEBUG_MODE & 8) == 8) { $logfilename = $this->root_path . DATA_DIR . '/mysql_query_' . $this->dbhash . '_' . date('Y_m_d') . '.log'; $str = $sql . "\n\n"; if (PHP_VERSION >= '5.0') { file_put_contents($logfilename, $str, FILE_APPEND); } else { $fp = @fopen($logfilename, 'ab+'); if ($fp) { fwrite($fp, $str); fclose($fp); } } }
条件成立,SQL查询语句将会追加写入到data/目录下,日志文件名由$logfilename定义。
以上是“ecshop调试模式参数DEBUG_MODE怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。