1

我想像这样链接引用一个字符串属性:

echo($object1->object2->stringProperty);

但这会产生这个错误:

可捕获的致命错误:类 [object 2's type] 的对象无法转换为字符串

我可以通过在某处强制进行类型转换来完成这项工作吗?它可以为中间对象使用中间变量,但这增加了不幸的麻烦:

class foo {
    public $bar;
}

class bar {
    public $title;
}

// Initialize the example.
$myBar = new bar();
$myFoo = new foo();
$myFoo->bar = $myBar;
$myBar->title = "fubar";

// Using an intermediate object works.
$temp = $myFoo->bar;
echo("$temp->title<br />");

// Using a direct reference raises a fatal error.
echo("$myFoo->bar->title<br />");
4

1 回答 1

5

要么删除引号:

echo $myFoo->bar->title . "<br />";

或放在大括号中(也称为复杂语法):

echo "{$myFoo->bar->title}<br />";
于 2013-04-23T21:21:18.863 回答