如何开启ECShop的调试模式
ECShop二次开发中需要开启调试模式才能更方便的显示输出值,那么如何开启ECShop的调试模式,下面将写出具体方法:
在includes/cls_template.php中找到如下代码:
[code]
function _eval($content)
{
ob_start();
eval('?' . '>' . trim($content));
$content = ob_get_contents();
ob_end_clean();
return $content;
}
[/code]
修改为:[separator]
[code]
function _eval($content)
{
ob_start();
eval('?' . '>' . trim($content));
$content = ob_get_contents();
ob_end_clean();
echo($content); //开启调试模式,生产环境下记得关闭,注释掉本行即可
return $content;
}
[/code]
在ecshop中我们要调试的时候就可以使用:
[code]
var_dump($val);
die();
[/code]
来输出查看变量。但是当变量过多的时候,就会显示不全,这时候我们会考虑使用print_r
[code]
print_r($val);
die();
[/code]
但是,这样输出的内容不是很工整,因此我们想要格式化一下它,所以修改为:
[code]
echo "<pre>";
print_r($val);
echo "</pre>";
die();
[/code]
这样子,我们就可以很好的查看各个变量了,但是我们不想每次都写得这么麻烦,因此我们可以封装自己的打印变量函数dump_die()
[code]
/* 封装自己的调试模式下打印变量函数dump_die() by husw 2016/7/12 */
function dump_die($val){
echo "<pre>";
print_r($val);
echo "</pre>";
die();
}
[/code]
以后当我们要查看变量的时候就可以使用这个函数来查看了。 把这个函数写在ecshop的全局函数includes/init.php这个文件里,它是ecshop初始化的文件,我们把函数放到这里面,就可以直接在任何地方调用我们自己的打印函数了。
在includes/cls_template.php中找到如下代码:
[code]
function _eval($content)
{
ob_start();
eval('?' . '>' . trim($content));
$content = ob_get_contents();
ob_end_clean();
return $content;
}
[/code]
修改为:[separator]
[code]
function _eval($content)
{
ob_start();
eval('?' . '>' . trim($content));
$content = ob_get_contents();
ob_end_clean();
echo($content); //开启调试模式,生产环境下记得关闭,注释掉本行即可
return $content;
}
[/code]
在ecshop中我们要调试的时候就可以使用:
[code]
var_dump($val);
die();
[/code]
来输出查看变量。但是当变量过多的时候,就会显示不全,这时候我们会考虑使用print_r
[code]
print_r($val);
die();
[/code]
但是,这样输出的内容不是很工整,因此我们想要格式化一下它,所以修改为:
[code]
echo "<pre>";
print_r($val);
echo "</pre>";
die();
[/code]
这样子,我们就可以很好的查看各个变量了,但是我们不想每次都写得这么麻烦,因此我们可以封装自己的打印变量函数dump_die()
[code]
/* 封装自己的调试模式下打印变量函数dump_die() by husw 2016/7/12 */
function dump_die($val){
echo "<pre>";
print_r($val);
echo "</pre>";
die();
}
[/code]
以后当我们要查看变量的时候就可以使用这个函数来查看了。 把这个函数写在ecshop的全局函数includes/init.php这个文件里,它是ecshop初始化的文件,我们把函数放到这里面,就可以直接在任何地方调用我们自己的打印函数了。