我在从 PHP7 中同一类中声明为 public 的方法访问变量时遇到问题,到目前为止,我有以下问题:
class H {
public $Q=array();
public function __construct(){
parent::__construct();
$Q[]="SELECT";
}
private function sas(){
if(isset($_REQUEST['n']) && $_REQUEST['n']!=""){
$q=$this->query($_REQUEST['n']);
}
}
private function query($n){
if($n==="a")
return $Q[0];
}
}
调用sas()
后我收到以下错误消息 <b>Notice</b>: Undefined variable: Q in <b>C:\xampp\apache\apps\a.php</b> on line <b>66</b><br />
.请帮忙!!
最佳答案
根据@Rizier123 的评论,$Q
需要是$this->Q
。要访问数组的第一个元素,请使用 $this->Q[0]
。每次访问类中的公共(public)变量(或任何其他实例变量)时,您都需要指定 $this
以引用当前对象。
关于php - 无法在 PHP 中访问公共(public)变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34755494/