我编写了以下代码:
Class stackOverflowExample {
private $hash;
private $cookie_file;
public function __construct(){
@session_start();
if(isset($_SESSION['gc_hash'])){
$this->$hash = $_SESSION['gc_hash'];
}else{
$this->$hash = md5(time());
$_SESSION['gc_hash'] = $this->$hash;
}
$this->$cookie_file = "./cookies/{$this->$hash}.txt";
}
}但我发现了这个错误
注意:未定义变量:第21行/var/www/gc/GeoCaching.Class.php中的散列
致命错误:无法访问第21行/var/www/gausie/gc/GeoCaching.Class.php中的空属性
在原始代码中,第21行指的是$this->$hash = $_SESSION['gc_hash'];。
我不明白为什么会发生这种情况,尽管我对OO还不熟悉。有什么想法吗?
发布于 2012-01-10 14:56:34
只需将$this->$hash替换为$this->hash
$this->$hash是指名称等于变量$hash值的变量。
https://stackoverflow.com/questions/8805270
复制相似问题