例如,让我说我有文件" other.php"包含此代码
class Building
{
public $name;
function __construct($name)
{
$this->$name = $name;
}
}
$bd = new Building("Name");
echo $bd->$name;
这会返回如下错误:
Notice: Undefined variable: name in (...)
Fatal error: Cannot access empty property in (...)
我希望输出像
Name
如何以这种方式访问PHP对象属性?谢谢。
答案 0 :(得分:3)
摆脱第二个$
。您可以使用$bd->name;
访问它。同样适合课堂内部。将$this->name
代替$this->$name
放在那里。
通常情况下,不要在$
运营商之后添加->
。
请查看PHP Documentation以供参考。
答案 1 :(得分:1)
避免使用名称前的$
符号。
应该像echo $bd->name;
..
答案 2 :(得分:1)
首先修复您的类代码:
function __construct($name)
{
$this->$name = $name;
}
应该是这样的:
function __construct($name)
{
$this->name = $name;
}
这将允许您像这样访问它:
$bd = new Building("Name");
echo $bd->name;
在此comment
中解决您的问题你得到那个错误,因为你没有实例化那个变量。
你应该这样做:
$buildings_HSB = new Building("Name");
echo $buildings_HSB->name;