PHP:实例化类时出现的问题
我尝试创建一个名为Isolate的类的新对象(该类用于防止XSS和通过htmlspecialchars等进行的其他攻击) 所以,我是这样做的:PHP:实例化类时出现的问题,php,class,oop,methods,constructor,Php,Class,Oop,Methods,Constructor,我尝试创建一个名为Isolate的类的新对象(该类用于防止XSS和通过htmlspecialchars等进行的其他攻击) 所以,我是这样做的: $data['name'] = $_POST['name']; $data = $isolate->isolateArr($data); 我的班级是这样的: class Isolate { public function isolate($var) { $iVar = htmlspecialchars($var);
$data['name'] = $_POST['name'];
$data = $isolate->isolateArr($data);
我的班级是这样的:
class Isolate {
public function isolate($var) {
$iVar = htmlspecialchars($var);
$iVar = mysql_real_escape_string($iVar);
$iVar = stripcslashes($iVar);
return $iVar;
}
public function isolateArr($arr) {
foreach($arr as &$instance) {
$instance = $this->isolate($instance);
}
unset($instance);
return $arr;
}
但是作为结果,我有一个类似于缺少隔离的参数1的警告。据我所知,它要求我提供第一个函数的参数,但我不需要调用第一个,我需要调用第二个(因为在这种情况下我有一个数组)
那么,为什么它总是要求第一个函数参数呢?没有任何\u构造方法,这有什么意义
提前谢谢你 isolate()
是您的构造函数方法
为了向后兼容,如果PHP5找不到给定类的_construct()函数,并且该类没有从父类继承_construct()函数,它将根据类的名称搜索旧式构造函数
isolate()
是您的构造函数方法
为了向后兼容,如果PHP5找不到给定类的_construct()函数,并且该类没有从父类继承_construct()函数,它将根据类的名称搜索旧式构造函数
添加\uu构造(){$a='b';}
应该有帮助吗?我不知道$a='b'是什么;是应该做的,但不管怎样,我指的是抽象的东西。由于我不确定是否允许我创建抽象构造函数方法,因此重命名错误的函数似乎比创建一个不需要的空的无用构造函数更容易。如果重命名isolate
,则将不再有构造函数方法。添加\u构造函数(){$a='b';}
帮助?我不知道什么是$a='b';是应该做的,但不管怎样,我指的是抽象的东西。由于我不确定是否允许我创建抽象构造函数方法,因此重命名错误的函数似乎比创建一个不需要的空的无用构造函数更容易。如果重命名isolate
,则您将不再拥有构造函数方法。