【Lv:2】
- 注册
- 2021/09/05
- 消息
- 44
- 金粒
- 5,133金粒
//第一种情况
class Test {
public $a;
public function Run($run) {
$this->a = $run;
echo $this->a;
}
}
$h = new Test;
$h->Run(114514);
//第二种情况
class Test {
public $a
public function Run($run) {
$this->$a = $run;
echo $a;
}
}
$h = new Test;
$h->Run(114514);
问题:这两种情况都能跑,而且运行的结果是一样的。
但是第一种情况是$this->a(不需要public $a;也能跑),第二种是$this->$a;
这看起来很混乱,而且我很难搞懂他们有什么区别,用起来还没有什么区别
但是如果应用于实际开发,他们两种可能会有一种出现问题,到时候的损失会是不可估量的。
但是我在学习的时候发现实例是这样写的
<?php
class Test {
public $a;
public function Run() {
echo $this->a;
}
}
$h = new Test;
$h->a = 10;
$h->Run();
//输出了10
我更加混淆了
望大佬解答!