define('IN_ECS', true);这个是怎么搞的呀

2016-07-07 15:01 来源:www.chinab4c.com 作者:ecshop专家

定义这个常量的时候真奇怪,我自己写的和它一摸一样运行不了,只有复制的才能用,真是奇怪了。。。

回答:
不会吧,是不是你拼写错了

检查了N此了,都没有拼错,但是就是运行不了,郁闷了,不知道咋搞的。。

大小写。也得一样才行

是啊,大小写都一样的了。

是不是因为内码的问题呢?

比如,ecshop 用的是utf-8编码的,
而你的编辑器用的不是utf-8的编码状态,是gbk等,

造成看起来字符一样,但内码不同?

那你就复制吧~~

不会吧,我就手写的就可以。
只是还不是太明白这个是什么作用。
是ECSHOP自身的安全机制吗?
有待研究。

define是php里定义常量用的。
第一个参数是常量名,第二个是常量的值。

里面经常用到。它定义这个常量的作用是防止被引用文件的非法载入,你会发现在另一个地方会有:
if (!defined('IN_ECS'))
{
die('Hacking attempt');
}
它的意思是检测是否存IN_ECS这个常量,不存在的话停止运行脚本,并显示'Hacking attempt'(非法攻击)

确定一模一样?

应该算是安全机制吧