ФорумПрограммированиеPHP для идиотов → Модульное построение сайта

Модульное построение сайта

  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 20 февраля 2009 г. 16:37

    Здравствуйте.
    хочу познать суть построения ядра сайта дополняемого модулями.
    погуглил, почитал пару статей типа
    Модульное программирование на PHP или как написать маленький портал

    но чето ничего нового не узнал, а самое главное ничего нужного.

    Мож у меня завышенное понятие модульного построения или же это действительно так банально includom делается?
    Прошу разьяснить. И ссылок, да побольше=)
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 20 февраля 2009 г. 18:55, спустя 2 часа 18 минут 18 секунд

    ну без инклуда то 100% никуда)

    а вот что и куа инклужить - это вопрос
    Сапожник без сапог
  • Givi

    Сообщения: 2284 Репутация: N Группа: Адекваты

    Spritz 20 февраля 2009 г. 20:42, спустя 1 час 47 минут 12 секунд

    phpdude
    Как всегда многословен и в тему :D

    А ведь Дуд явно знает в каком направлении двигаться!
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 20 февраля 2009 г. 21:05, спустя 22 минуты 41 секунду


    phpdude
    Как всегда многословен и в тему :D

    А ведь Дуд явно знает в каком направлении двигаться!
    ты меня хуево читаешь. я знаю, знал, знать буду, я тебе даже сказал что делать :) вопрос в том как тебе удобно эти инклуды делать вот в чем вопрос.
    Сапожник без сапог
  • Lirck

    Сообщения: 1658 Репутация: N Группа: Джедаи

    Spritz 20 февраля 2009 г. 21:52, спустя 46 минут 35 секунд

    сделай ядро registry. оттуда вызывай модули $core->module($arguments); и храни все конфиги. посмотри класс мавра http://mabp.kiev.ua/2008/04/17/registry/
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 20 февраля 2009 г. 23:45, спустя 1 час 53 минуты 30 секунд


    сделай ядро registry. оттуда вызывай модули $core->module($arguments); и храни все конфиги. посмотри класс мавра http://mabp.kiev.ua/2008/04/17/registry/

    Мдя…
    Прочитал 4 раза. гуглил незнакомые слова раз 30. но как работает не понял =(
    Наверное не удевительно , так как ООП еще ни разу не применял =)

    Если я правильно понял, то нам нужно создать класс который будет управлять всеми остальными классами.
    Клас registry создает обьекты разных классов по передаваемым именам.
    но как этим пользоваться?

    вот у меня есть 2 класса
    1 class sql
    2 class Smarty
    есть еще и class registry
    и как мне создать клас user так чтоб он о класе sql и Smarty знал?
  • Timur

    Сообщения: 1068 Репутация: N Группа: Джедаи

    Spritz 21 февраля 2009 г. 0:05, спустя 20 минут 6 секунд

    и как мне создать клас user так чтоб он о класе sql и Smarty знал?
    Registry … это singleton класс, имеющий в себе ссылки на все основные ресурсы сайта …


    кстати, зачем объектам User знать о Smarty?
  • CyberSport

    Сообщения: 245 Репутация: N Группа: Кто попало

    Spritz 21 февраля 2009 г. 1:36, спустя 1 час 30 минут 43 секунды

    Чувак не еби мозги! есть ZF он очень гибкий! используй его ,изучи минусы если найдешь - сделай лучше! ты не придумаешь ничего лучше пока не изучешь лучшее что есть
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 февраля 2009 г. 1:50, спустя 14 минут 16 секунд

    CyberSport, как низко … ))
    Сапожник без сапог
  • CyberSport

    Сообщения: 245 Репутация: N Группа: Кто попало

    Spritz 21 февраля 2009 г. 1:54, спустя 3 минуты 54 секунды


    CyberSport, как низко … ))


    не понял
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz 21 февраля 2009 г. 4:10, спустя 2 часа 15 минут 43 секунды


    Чувак не еби мозги! есть ZF он очень гибкий! используй его ,изучи минусы если найдешь - сделай лучше! ты не придумаешь ничего лучше пока не изучешь лучшее что есть

    Полностью согласен, пусть попробует, ведь можно многие компоненты использовать отдельно, а можно писать полностью на нем. К ZF есть документация, конечно, на русском не все переведено, но там есть примеры. Думаю разобраться можно, если захочется, а если нет пиши полностью все сам, но рано или поздно ты все равно напишешь ZF, так как там уже многое учли.
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 21 февраля 2009 г. 9:37, спустя 5 часов 26 минут 41 секунду


    Чувак не еби мозги! есть ZF он очень гибкий! используй его ,изучи минусы если найдешь - сделай лучше! ты не придумаешь ничего лучше пока не изучешь лучшее что есть

    Ну еслиб мне кто нибудь раньше сказал что есть Zend Framework, я бы может и не доставал вас =)
  • Lirck

    Сообщения: 1658 Репутация: N Группа: Джедаи

    Spritz 21 февраля 2009 г. 10:35, спустя 58 минут 31 секунду



    сделай ядро registry. оттуда вызывай модули $core->module($arguments); и храни все конфиги. посмотри класс мавра http://mabp.kiev.ua/2008/04/17/registry/

    Мдя…
    Прочитал 4 раза. гуглил незнакомые слова раз 30. но как работает не понял =(
    Наверное не удевительно , так как ООП еще ни разу не применял =)

    Если я правильно понял, то нам нужно создать класс который будет управлять всеми остальными классами.
    Клас registry создает обьекты разных классов по передаваемым именам.
    но как этим пользоваться?

    вот у меня есть 2 класса
    1 class sql
    2 class Smarty
    есть еще и class registry
    и как мне создать клас user так чтоб он о класе sql и Smarty знал?




    class UserController
    {
    public function print_email($name)
    {
    $core = Core::instance();
    $this->model->get_email($name);
    $smarty = $core->Smarty();
    /*
    парсинг шаблона
    */
    }
    }

    class UserModel
    {
    public function get_email($name)
    {
    $core = Core::instance();
    $name = анти_скл_инъекшн($name);
    $core->sql("SELECT email FROM users WHERE name = {$name}");
    }
    }
  • Trej Gun

    Сообщения: 5305 Репутация: N Группа: в ухо

    Spritz 21 февраля 2009 г. 11:56, спустя 1 час 20 минут 55 секунд

    кстати, зачем объектам User знать о Smarty?

    ну захотел он свое имя на экран написать
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 21 февраля 2009 г. 15:38, спустя 3 часа 41 минуту 57 секунд

    И так, приобщаемся к прекрасному, к класам =)

    CTAPbIu_MABP, правильно ли я пользуюсь твоим классом?

    class UserController
    {
       public function print_email($name)
       {

    echo $name;
       }
    }

    class UserController2
    {
       public function print_email($name)
       {

    echo $name;
       }
    }
    class UserModel
    {


       public function get_email($name)
       {
           $UserController=Registry::extract("UserController");
           $UserController2=Registry::extract("UserController");
           echo $name."<br>";
           echo $UserController->print_email("UserController")."<br>";
           echo $UserController2->print_email("UserController2")."<br>";
       }
    }


    $UserModel=Registry::register("UserModel");

    /* это я так понимаю пока необязательно*/
    $UserController=Registry::register("UserController");
    $UserController2=Registry::register("UserController2");


    $UserModel->get_email("UserModel");

Пожалуйста, авторизуйтесь, чтобы написать комментарий!