ООП или мои руки растут ниже плеч?!

157
.
Все привет, в общем у меня такая проблема я пишу скрипт в нем подключаеться главный файл

// File index.php
require_once('include/config.php');
//Здесь мы проверяем какую страницу подключать
$obj->getDisplay((isset($mod) && !empty($mod))? $mod : 'main');


Метод getDisplay определяет какую страницу подключать по переданным данным в переменной mod

вот и сам этот метод

public function getDisplay($mod)
	{
        require_once ($this->pathRoot('STYLE') . 'head.php');
        $ini = parse_ini_file($this->pathRoot('STYLE') . 'mod.ini',true);
        $mode = array_keys($ini);
        if(in_array($mod,$mode))
        {
            $values = array_values($ini[$mod]);
            $incfile = $values[0];
            if(file_exists($this->pathRoot('STYLE') . $incfile))
            {
                require_once ($this->pathRoot('STYLE') . $incfile);
            }else{
                require_once ($this->pathRoot('STYLE') . 'error.php');
            }
        }
        require_once ($this->pathRoot('STYLE') . 'foot.php');
	}


ну а вот сама суть проблемы в подключенных файлах уже не работает объявленный клас, т.е. в подключенных файлах ругаеться на такие строки как

echo $obj->getVersion();


говорит что такой клас не объявлялся а что бы работало приходиться в этих файлах заново его объявлять, но ведь так не должно же быть? Верно?

Подскажите кто ни будь уже сталкивался с таким?
.
╭∩╮ (`-`) ╭∩╮
Насколько я помню, в оф. мануалах РНР есть такой ремарк, что если класс объявлен в основном файле, это объявление не будет работать в тех файлах. которые ты потом проинклюдишь.

И наоборот, если класс объявлен в Include файле, это объявление будет работать в основном файле.
.
Спасибо но мне уже подсказали оказуеться в файлах которые подключенны в контексте класса то внутри этих файлов надо обращаться к классу через $this
Всего: 3