我有一个类,为了便于理解,采用关联数组,在其上循环并根据键分配变量名,并为其赋值。 这在班上工作得很好:
class showItems {
static public function list(){
foreach ($list as $name => $value) {
$$name = $value;
}
// This works here
echo $title; // This is the variable I want Which is being set in the foreach.
break;
}
}
上面的类工作正常,$ title可以回显。 但是,从课堂外访问该变量是我没有运气的地方。我已经尝试了我能想到的所有类型的流程。
$showItems = new showItems();
$showItems::list();
// Cannot grasp what I need to do here to echo the value I want.
$showItems::list()->$title; // This returns "Trying to get property of non-object"
?>
答案 0 :(得分:1)
执行$TestItems=new testItems()
然后TestItems->list()
之类的操作,并使列表功能return $title
。
答案 1 :(得分:1)
不要在echo
方法中list
。
您可以通过static
这样的list
发送class
方法:showItems::list()
您没有将参数传递给list
方法,这非常奇怪,因为您已声明
采用关联数组
$list
方法中的list
似乎未初始化。
如果您只想调用class
方法,则无需实例化static
。
目前还不清楚你要做什么,所以请重新提一下你的问题,并在这篇文章中写评论,这样我就会编辑我的答案来帮助你。