比方说,我有这样的:链接方法和变量传递
class "classname"
{
....
public function section($id)
{
// variable method name
$this->section->$id = new stdClass();
return $this;
}
public function subsection()
{
// $id is not available here
$this->section->$id->subsection = array();
return $this;
}
....
}
当我打电话:
$classname->section("test")
->subsection();
它不工作,因为$ ID是不是全局和在第二ChainLink研究组。我必须手动将它传递给 - >小节($ id),还是有更通用/更清洁的方式来实现它?
我在这里尝试完成的是创建一个包含多个部分的(大)对象。在这些部分中,对象和/或数组有更多(链接)方法。
你在哪里声明变量'$ id'?同时检查该变量是否保存访问说明符“protected”或“public”。 – Ranjith
如果你发布完整的代码会更好 –
你是否在你的'class Classname'中定义了类成员/变量/字段/ etc'$ section'?如果是这样,它是什么类型?它是否有一个名为'$ id'的属性,您可以设置? – Havelock