【发布时间】:2011-12-20 17:48:15
【问题描述】:
我正在开发一个 cms,我希望设计者能够在使用名为 $view 的对象时调用所有内容。我的问题是包含的模板文件不能再访问 $view-object 了。
视图对象包含 page_title() 等内容。 我也使用模板,所以我希望设计者能够通过访问 $view 对象来调用正确的模板。
一些代码来支持我的解释:
我的图书馆:
class view {
function page_title() {}
function template() {
$this->template = new template;
$this->template_include = $this->template->template_include();
}
}
class template {
function template_include(){
include('template.php');
}
}
我的索引文件:
$view = new view;
$view->template();
我的模板.php:
$view->page_title();
但是我遇到了一个问题:视图对象被创建,然后是,使用视图类中的一个方法,调用一个对象,该对象使用方法 template_include(),包含正确的 template.php。在这个模板中,我再次使用视图对象,以调用正确的标题、内容、... 我的问题是包含的模板文件不能再访问 $view-object 了。
猜猜你们都知道错误: 致命错误:在非对象上调用成员函数 field_title()
我致力于使这个 cms 对设计者/用户来说尽可能简单,所以我只希望视图对象调用所有内容,而不需要在模板文件等中包含额外的内容...
谢谢!
【问题讨论】:
标签: php oop object include scope