将对象传递给同一对象包含的文件

时间:2014-07-01 22:12:37

标签: php class oop object include

我正在创建一个PHP模板引擎。我在这里遇到一个问题,我想了解如何解决这个问题。

我正在尝试在同一对象包含的文件上使用对象。我一直试图打电话给$ Views-> get_link(“GitHub”);但不幸的是,它表示找不到变量。我似乎无法找到一种方法让它发挥作用。

以下是代码:

button.view.php:

<a class="btn btn-lg btn-success " href="<?php $Views->get_link("GitHub"); ?>">

views.php:

function load_view($view) {

    $viewpath = ZEAM_VIEW_BASEDIR.'/'.$view.ZEAM_VIEW_SUFFIX;

    if (file_exists($viewpath)) {

        include($viewpath); 

    }

}

对象启动器:

// Okay, we're ready to start it up!

require('core.php');

$ZeamEngine = New Zeam(true);

require('modules.php');
require('views.php');

$Modules = New Modules($ZeamEngine);
$Views = New Views($ZeamEngine);

// Custom code for this

$Modules->load_module("ZeamRequisChecker");
$Views->add_link("GitHub", "http://github.com/Alphasquare/Zeam/");

我该怎么做?如果需要更多信息或文件,请询问。

1 个答案:

答案 0 :(得分:1)

如果load_view是类视图的方法,如果button.view.php是包含在方法load_view中的文件 - 则需要使用$this而不是{{1 }}

$Views

http://www.php.net/manual/en/language.variables.scope.php

http://www.php.net/manual/en/language.oop5.basic.php