外部变量在类内部定义

时间:2018-07-25 01:34:54

标签: php oop

如何在类中定义变量?似乎全局只在函数内部起作用。

<?php

$a = '20';
$b = '10';

class test {
global $a; $b;


    function add() {


        echo $a;

    }


}

$answer = new test();

$answer->add();

?php>

我尝试了这一步(在类中使用global,但出现错误) 另外,如何只用一行代码定义多个变量,而不是每个都定义它。

2 个答案:

答案 0 :(得分:0)

要定义类属性(或变量),您需要这样做:

class Foo {

  private $myVar = 'my var'; // define a class property

  public function add() {
    echo $this->myVar; 
  }

}

答案 1 :(得分:-1)

如何通过构造函数传递数据?

代码:(Demo

$a_outside = '20';
$b_outside = '10';

class test {
    public $a_inside;
    public $b_inside;

    public function __construct($a_passed_in, $b_passed_in)
    {
        $this->a_inside = $a_passed_in;
        $this->b_inside = $b_passed_in;
    }

    public function add()
    {
        echo $this->a_inside + $this->b_inside;
    }
}

$answer = new test($a_outside, $b_outside);
$answer->add();  // output: 30
  1. 通过构造函数调用中的参数将变量传递给类。
  2. 在构造调用中的类中将值定义为变量。
  3. add()方法中访问变量。