在PHP类中使用外部变量

时间:2013-06-13 18:31:25

标签: php

我是PHP新手,所以如果答案非常明显,请原谅我。我试图弄清楚如何使用在类内部定义的变量。这是一个非常粗略的例子

$myVar = 'value';

class myClass {
  private $class_var = $myVar;
  //REST OF CLASS BELOW
}

我知道上面的内容不起作用,但是如何在类中使用外部$ myVar?

2 个答案:

答案 0 :(得分:13)

试试这个:

$myVar = 'value';

class myClass {
  private $class_var;

  public function __construct($myVar) {
    $this->class_var=$myVar;
  }

  //REST OF CLASS BELOW
}

在声明课程时,您需要像$myVar那样传递$myClass = new myClass($myVar);

答案 1 :(得分:-3)

每个功能都有自己的“范围”。你可以通过在函数中将变量声明为全局变量来覆盖它:

$myVar = 'value';

class myClass {
  public function __construct() {
    global $myVar;
    $this->class_var=$myVar;
  }
}

这将在对象实例中设置变量。

但是请注意,您可以直接在函数中使用它,而无需将其设置为类变量,如下所示:

$myVar = 'value';

class myClass {
  public function myfunction() {
    global $myVar;
    echo $myVar;
  }
}