За последние 24 часа нас посетили 64748 программистов и 1744 робота. Сейчас ищут 1168 программистов ...

Класс - инсталятор скриптов

Тема в разделе "Прочие вопросы по PHP", создана пользователем enshtein, 10 янв 2007.

  1. enshtein

    enshtein Активный пользователь

    С нами с:
    27 авг 2006
    Сообщения:
    291
    Симпатии:
    0
    Часто приходиться писать инсталяторы для установки различных скриптов, хотелось бы автоматизировать и унифицировать процесс...
    На днях задумался создать класс - инсталлятор, смысл следующий:
    например есть у нас какой-либо скрипт (набор скриптов) или своя CMS ну и т.п., надо осуществить автоматизированную установку веб-приложения, т.е. инициализация переменных (создания какого-либо файла параметров, например config.php или нескольких файлов), выполнение SQL-запросов (запросы из дампа базы - например dump.sql), операции с файлами (chmod(), создание, копирование, удаление), генератор паролей , проверка хода установки - генерация исключений и т.д.!

    Пока видится все это мне в таком виде:
    создаем файл install.php, следующего содержания:

    Код (Text):
    1. <?php
    2. //подлючаем файл-класс-инсталлятор:
    3. include_once('install_class.php');
    4.  
    5. // это только задумка - естественно класс не реализован пока, но работу его я представляю так:
    6.  
    7. $install = new CInstal();
    8.  
    9. // определяем и создаем конфигурационный файл
    10. $install->CreateConfig('config.php');
    11.  
    12. // определяем массив переменных - инициализируемых в файле config.php
    13. // ассоциативный массив вида наименование параметра => переменная
    14. $install->ParamConfig = array ('Хост БД' => 'db_host', 'Имя БД' => 'db_name');
    15.  
    16. //определяем путь к файлу дампа БД
    17. $install->QueryDump('sql/dump.sql');
    18.  
    19. // шаблон страницы инсталла
    20. $install->SetTemplate('template/istall.tpl');
    21.  
    22. // выводим
    23. $install->display();
    24. ?>
    Меня интересует ваше мнение - об этом, а также предложения или же тыкните носом в что-то похожее, сделанное до меня, дабы я велосипед не придумывал или же наоборот выхватил интересные идеи и реализовал! :)
     
  2. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    enshtein

    скачай дистриб e107
    и посмотри, как там инсталлятор сделан)
    все тобой перечисленное он умеет делать)
     
  3. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург