我试图在另一个类中使用类的对象(使用Foo中的Test实例)
我初始化$ cls作为Foo构造函数的新测试,并且它预期的$ cls可以在Foo实例中使用,但它不是。
以下是我的尝试:
<?php
class Test
{
function __construct()
{
}
public $str = "Arash";
}
class Foo
{
function __construct()
{
$cls = new Test();
}
public $cls;
}
$ttt = new Foo();
$mmm = $ttt->cls;
//$mmm = new Test(); //if I uncomment this line , every thing will work well
echo $mmm->str;
跑完后我得到了这个错误:
注意:尝试获取非对象的属性
如果我再次初始化cls,那就没问题了。
为什么在构造函数中初始化$ cls不起作用?
答案 0 :(得分:1)
//hey check it here is your code.
<?php
class Test
{
public $str = "Arash";
function __construct()
{
}
}
class Foo
{
public $cls;
function __construct()
{
$this->cls = new Test();
}
}
$ttt = new Foo();
$mmm = $ttt->cls;
//$mmm = new Test(); //if I uncomment this line , every thing will work well
echo $mmm->str;