-3
因此,我不是PHP的专家,从现在开始我一直在学习程序,当时我决定尝试一些OOP。我试图创建一个MySQL转义函数来防止SQL注入,但错误“致命错误:无法重新分配$ this”会被吐出。
public function escape($result) {
global $this->con;
return mysqli_real_escape_string($this->con, $result);
}
当我删除“全球”,错误不再存在,但需要这样的。
谢谢。
Glogal为全局名称空间分配一个变量。即在你的对象之外,供大家使用。 $ this引用您的对象的当前实例。你不能让这个全球化,这将允许每个人都改变。创建对象的实例并在代码中更改该实例的con值。 – Nic3500
这甚至没有意义......如果你有权访问该范围中的'$ this-> con',那么你可以将它作为参数传递给'mysqli_real_escape_string'(仍然没有使用准备好的语句...?)就在那里 - 根本就不必是全球性的。 – CBroe
看到这:https://stackoverflow.com/questions/1523479/what-does-the-variable-this-mean-in-php – Nic3500