[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Загрузка моделей и компонентов MVC
gam0ra
Всем привет хочу сделать загрузку компонентов и моделей))Есть пару примерчиков user posted image
Жду критики! и сообщений о том какой это говнокод :D user posted image

И расказов о том как надо это делать правильно)))

При помощи autoload


function __autoload($className){
$ex_name = explode('_',$className);
$ex_count = count($ex_name) - 1;

if($METHOD_CALL == 'model'){
$file = './application/models/'.$className.'.php';
if(file_exists($file)){
require $file;
}
else{
echo '"'.$className.'" model not found';
}
}

elseif($METHOD_CALL == 'components'){
$file = './system/components/'.$className.'/'.$className.'.php';
if(file_exists($file)){
require $file;
}
else{
echo '"'.$className.'" components not found';
}
}

else{
$file = './application/models/'.$className.'.php';
if(file_exists($file)){
require $file;
}
else{
echo '"'.$className.'" model not found';
}
}
}




Некий класс loader


class loader{
public function model($name){
$file = './application/models/'.$name.'.php';
if(file_exists($file)){
require $file;
return New $name();
}
return false;
}
}



Наш контролер

class index extends main_controller{

public function __construct() {
parent::__construct();
$this->session->session_start();
}

public function action_index(){
$this->loader->model('five');///Через Лoader
$new = new five; ///При помощи autoload
}

}



Жду ваших примеров реализации))


Быстрый ответ:

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