php - 无法在 PHP 中访问公共(public)变量

标签 php

我在从 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/

相关文章:

php - 在 PHP 中返回最后一个 MySQL 插入的 id

php - 基于角色的路由保护的简单方法 Laravel 5.2

php - 强制为 Laravel Socialite Google+ 登录选择用户帐户

php - 允许具有自己限制的别名的单个查询

php - Codeigniter 事件记录 : greater than statement

php - 如何在此日期时间字符串的时间上添加一个小时?

php - exec() 中的 ffmpeg 命令

包含数据库查询的 PHP 构造函数来构建对象,好/坏?

php - 更改从 mysql 检索到的 php 中的日期格式

php - 如何使用 PHP 在 Wordpress 上登录和设置当前用户?