[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Class not found
darkavenger
Друзья, объясните мне пожалуйся сей нюанс. Я тут пробовал делать автоматическую подгрузку контроллеров, моделей и не могу понять одну штуку.

индексный файл

<?php
header("Content-Type: text/html; charset=utf-8");

error_reporting(E_ALL);

require './core/controller.php';
require './core/model.php';

include './views/index.php';


controller.php

<?php

require_once './core/find_path.php';

//route
class Route {
static function start($GET) {

if (file_exists(ROOT_PATH.PATH_CONTROLLERS.new_path::make_path($GET).'_controller.php')) {
$path_controller=ROOT_PATH.PATH_CONTROLLERS.new_path::make_path($GET).'_controller.php';
return $path_controller;
}
else {
header("HTTP/1.1 404 Not Found");
exit(file_get_contents(ROOT_PATH.'/404.html'));
}
}
}



model.php

<?php
class
Model {
static function start($GET) {

if (file_exists(ROOT_PATH.PATH_MODELS.new_path::make_path($GET).'_model.php')) {
$path_model=ROOT_PATH.PATH_MODELS.new_path::make_path($GET).'_model.php';
return $path_model;
}
else {
echo 'File '.self::make_path($GET).'_model not found.';
}
}
}



и как конкретные представители контроллер и модель индексной страницы

main_controller

<?php
$model= new main_model;
echo 'MAIN controller';
echo $model->echo_text();


main_model

<?php

class
main_model {
function echo_text () {
$txt='MAIN MODEL';
return $txt;
}
}



файл вида index.php

<?php include Route::start($GET); include Model::start($GET); ?>

То есть, когда я вызываю индексную страницу, должен подключиться контроллер, модель и на странице выведется "MAIN controller MAIN MODEL" как факт того, что все файлы подключены. Но по факту выходит так, что вылетает ошибка: Fatal error: Class 'main_model' not found in Z:\home\site.loc\www\controllers\main_controller.php on line 9

Выходит, что в файле main_controller я создаю объект с именем main_model и через него пытаюсь вывести фразу MAIN MODEL . Но именно в этом файле контроллера он не находит подключения файла этой модели. То есть ему плевать, то что я подключил файл модели параллельно файлу контроллера, ему нужно чтобы я подключил файл main_model именно в файле main_controller, и тогда он найдет класс с этим именем.
Рассудите все эти дела с видимостью класса для объекта пожалуйста.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.