@vladislav997

Как правильно спроектировать приложение?

Подскажите, как правильно спроектировать приложение на Smarty и чистом PHP?

В смарти дефолтная структура идёт такая:
/www.example.com/
        libs/
                Smarty.class.php
                Smarty_Compiler.class.php
                Config_File.class.php
                debug.tpl
                internals/*.php
                plugins/*.php
        guestbook/
                templates/
                    index.tpl
                templates_c/
                configs/
                cache/
                htdocs/
                    index.php

Если допустим сделать каталог Controller, где будут хранится все контроллеры, то это будет выглядеть примерно так:
/www.example.com/
        guestbook/
                contoller/
                    MainController.php
                templates/
                    index.tpl

где если в контроллере например написать:
<?php
require_once('../../libs/Smarty.class.php');

$smarty = new Smarty();

$smarty->template_dir = '../templates/';
$smarty->compile_dir = '../templates_c/';
$smarty->config_dir = '../configs/';
$smarty->cache_dir = '../cache/';

$smarty->assign('name', 'Катруська');

$smarty->display('index.tpl');

то нам придётся заходить по урлу guestbook/controller/MainController.php, и только там мы увидим Привет, Катруська! Добро пожаловать в Smarty!
Вообщем выглядит всё это очень стрёмно. Подскажите как реализовать всё это правильно?
  • Вопрос задан
  • 156 просмотров
Решения вопроса 1
DevMan
@DevMan Куратор тега PHP
пишите свой роутер или берёте готовый, и проблема решена.

или костылите кучу реврайтов. проблему так же решит, но способ - так себе.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы