我写了以下代码:
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";
}
}
但是我收到了这个错误
注意:未定义的变量:hash in 第21行的/var/www/gausie/gc/GeoCaching.Class.php
致命错误:无法访问空属性 第21行的/var/www/gausie/gc/GeoCaching.Class.php
在原始代码中,第21行引用$this->$hash = $_SESSION['gc_hash'];
。
我不明白为什么会发生这种情况,尽管我是OO PHP的新手。有任何想法吗?
答案 0 :(得分:10)
只需将$this->$hash
替换为$this->hash
$this->$hash
表示名称等于变量$hash
值