从$ this->变量中获取变量

时间:2012-07-12 03:02:12

标签: php

  

可能重复:
  Get PHP class property by string
  PHP method chaining?

我有一个类,其中一个方法返回它被调用的实例。如何直接从函数的返回值访问属性(其名称存储在变量中)?这就是我现在正在尝试的事情:

class MyClass {
    public $variable_one;

    public function function_one() {
        $variable = 'last';
        // The problematic line: call method, access property on result
        return $this->function_two->$variable;
    }

    public function function_two($params = array()) {
        if (is_array($params)) {
            $params = http_build_query($params, NULL, '&');
        }

        $this->option(CURLOPT_COOKIE, $params);
        return $this;
    }
}

1 个答案:

答案 0 :(得分:0)

$this变量特殊并且只存在于类中。如果在名为变量的类中有属性,则可以从该类中使用$this->variable访问该属性。

class MyClass
{
   private $variable;
   public function getVariable()
   {
       return $this->variable;
   }
}