loading...

Авторизация ...

Имя пользователя :
Пароль :
я всё забыл!

Модули, PHPКласс замены файлов для Intsall

Написал Hamer, 11 января 2008 | 31 комментарий | рейтинг новости не нравится   +92   нравится Версия для печати
Автор: Hamer [ Age-Web.Org Meida Group ]

Каждый раз, когда я пишу модуль меня все время задалбывает писать установку вида:


Открыть ...index.php найти: траляля заменить на: траляля...


Именно для этого я и написал этот класс, теперь будет легче писать установку для своих модулей другим веб мастерам , и самое главное, пользователям, они смогу устанавливать модуль с одного файлы инсталяции.

Качаем этот класс:
Вы не можете скачивать файлы с нашего сервера

Подключаем его к файлу установки.

и создаем в нем класс
$installer = new aw_file_writer; // создаем класс


пример "найти", "вставить ниже"


$installer -> open(ENGINE_DIR.'/engine.php'); // открываем нужный файл

$find[0] = "switch...."; // что искать?
$add[0] = "case...."; // что вставить ниже?
$installer->set($find[0],$add[0]); // производим поиск
$installer->compile('string');


Тем самым мы в файле engine.php после switch.... вставим case....

в $installer->compile()

можно писать 3 параметра

1. string - Поиск, вставить ниже.
2. line - Вместо $find[0] пишем цифру, где цифра это линия, после которой будет добавлено $add[0];
3. replace - Замена $find[0] то, что надо найти, $replace[0] то, на что нужно заменить $find[0]


пример замены:


$installer -> open(ENGINE_DIR.'/engine.php'); // открываем нужный файл

$find[0] = "switch...."; // что искать?
$replace[0] = "case...."; // на что заменить?
$installer->set($find[0],$replace[0]); // производим поиск
$installer->compile('replace');


пример вставки после определенной линии :


$installer -> open(ENGINE_DIR.'/engine.php'); // открываем нужный файл

$line = 488; // линия
$add = "// линия 489"; // строка которая будет ити после 488 линии, т.е 489 линия.
$installer->set($line,$add); // производим добавление
$installer->compile('line');


Пользуйтесь, всем спасибо, думаю описал все подробно.
Будут траблы пишите. У меня все работает



Комментарии пользователей

  Экспорт комментариев в RSS
 Сортировать по рейтингу, по дате

Написал arhipov, 11 января 2008 в 01:00 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 0, Гости
Карма: ±
ХМ! У меня давно были идеи по данному моду, хотел сам написать, еще давненько! Если хочешь могу поделиться мыслями, будет очень удобная тяга и получит своё применение! По вопросам стучись в аську 984-964

Написал Vano, 11 января 2008 в 01:57 плохой комментарий   0   хороший комментарий
Новостей: 8, комментариев: 272, Пользователи
Карма: 18±
Hamer супер! Вот будет круто когда одним файлом модули ставится будут 4 )


Вопрос не в тему: нужен хак кустому для возможности выбора своей сортировки для него.

Пример: {custom category="20" template="block" aviable="global" from="0" limit="7" sort="date" cache="no" }

Возможные значения sort: global, date, rate, view, alphabetic

Написал Hamer, 11 января 2008 в 02:16 плохой комментарий   0   хороший комментарий
Новостей: 42, комментариев: 2186, Изгнанные
Карма: 50±
Vanes,

Дык с этим классом я уже давно делаю в модулях установку одним файлов. Загрузил на сервак поставил chmod и дерзай.

Написал Vano, 11 января 2008 в 02:20 плохой комментарий   0   хороший комментарий
Новостей: 8, комментариев: 272, Пользователи
Карма: 18±
Hamer, я отстал от жизни )) А ты часом не хочешь сделать хак кустов?

Написал Hamer, 11 января 2008 в 02:25 плохой комментарий   0   хороший комментарий
Новостей: 42, комментариев: 2186, Изгнанные
Карма: 50±
Vanes,
По таким вопросам ко мне на форум.

Написал unstandart, 11 января 2008 в 02:33 плохой комментарий   0   хороший комментарий
Новостей: 5, комментариев: 83, Изгнанные
Карма:
появилась такая идея после того как увидел твой DLE modules creator

Написал Hamer, 11 января 2008 в 03:08 плохой комментарий   0   хороший комментарий
Новостей: 42, комментариев: 2186, Изгнанные
Карма: 50±
unstandart,

Вообще-то класс я этот написал еще раньше.

Написал unstandart, 11 января 2008 в 03:33 плохой комментарий   0   хороший комментарий
Новостей: 5, комментариев: 83, Изгнанные
Карма:
ну да, я про себя говорю. а так это удобно для тех кто устанавливать будет ... запустил 1 файл ... и готово.

хотя писать мануалы станет запарнее ... хотя наверное тоже самое

Написал arex, 11 января 2008 в 03:54 плохой комментарий   0   хороший комментарий
Новостей: 17, комментариев: 408, Пользователи
Карма:
Люди, вы только потом не забывайте права на файлы обратно ставить))) А то отредактируете, потом на папке с файлами 777)

Написал sklazer, 11 января 2008 в 04:04 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 0, Гости
Карма: ±
Будет интересно, что если файл, в котором будет производится замена, уже изменялся пользователем. И тогда на 482 строке (к примеру) будет находится совершенно другой код. ranting2

Написал Hamer, 11 января 2008 в 04:30 плохой комментарий   0   хороший комментарий
Новостей: 42, комментариев: 2186, Изгнанные
Карма: 50±
sklazer,

Очень просто миго. Способ замены line для экстренных случаев, когда ты уверен, что там именно то, что тебя интересует.
Используй способ string Миго wink

Написал PoMaH, 11 января 2008 в 11:55 плохой комментарий   0   хороший комментарий
Новостей: 2, комментариев: 215, Пользователи
Карма:
dopishy ctob backup delalo po formam (i skolko ih delat) v otdelnuju papku, a to osybioshsia linijiei budish znat` ;]]

Написал Vano, 11 января 2008 в 14:08 плохой комментарий   0   хороший комментарий
Новостей: 8, комментариев: 272, Пользователи
Карма: 18±
Vitas та это всем будет полезно, кто кустом юзает. Только что-то браться никто не хочет ( Хамеру на форуме отписал, пока молчок.

Написал rinx, 11 января 2008 в 14:09 плохой комментарий   0   хороший комментарий
Новостей: 8, комментариев: 45, Пользователи
Карма:
Респект! отличная идея! +1

Написал tmvrn, 11 января 2008 в 15:59 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 54, Пользователи
Карма:
действительно нужная вещь. спасибо.

Написал Hamer, 11 января 2008 в 16:08 плохой комментарий   0   хороший комментарий
Новостей: 42, комментариев: 2186, Изгнанные
Карма: 50±
wink Сам юзаю и вы юзайте.

Написал TUNER88, 12 января 2008 в 17:10 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 0, Гости
Карма: ±
Давно бы так, удобнаю штука, ещё бы все модули сразу так делались, вобще отлично было бы!!!

Написал BlackM, 13 января 2008 в 02:01 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 0, Гости
Карма: ±
Инстал инсталом) Но теперь юзверю ничего не удалить) так-что особой ползы пока нету)

Написал pgi, 13 января 2008 в 02:44 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 0, Гости
Карма: ±
Супер! Автору респект. Только есть вопросы

1. А если нужно "вставить выше" ? Возможен же вариант, где строка поиска _над_ которой нужно поставить одна, а _под_ которой две и более

2. Если встречается несколько строк отвечающих условию, как мне указать, что поменять нужно строчку во втором или третьем вхождении?

3. Можно включить все тоже самое, но для "отката". Т.е. для удаления модуля?

Написал Hamer, 13 января 2008 в 06:38 плохой комментарий   0   хороший комментарий
Новостей: 42, комментариев: 2186, Изгнанные
Карма: 50±
Цитата: pgi
Можно включить все тоже самое, но для "отката". Т.е. для удаления модуля?



Тю, так же и делаешь отката.

ТОлько вместо елемента для поиска вставляешь елемент который заменял.
А вместо замены просто ''

и все.

Написал pgi, 13 января 2008 в 20:23 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 0, Гости
Карма: ±
Цитата: Hamer
ТОлько вместо елемента для поиска вставляешь елемент который заменял.
А вместо замены просто ''


Это понятно, но это значит, что нужно перелопачивать снова весь файл инсталляции только меняя значения в другую сторону. Вспоминаю установку форума в сто с чем-то там шагов - волосы дыбом.

Коль уж авторы модов не хотят или не захотят пользоваться твоим или подобными классами инсталла, придется создавать их самому, что теперь делает гораздо более легким переустановку и обновление, но возможность сделать откат более простым способом - было бы огромным плюсом.

Написал tmvrn, 15 января 2008 в 23:25 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 54, Пользователи
Карма:
А если нужно вставить строку выше, чем искомый текст?

Написал Ilya, 30 января 2008 в 22:27 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 4, Пользователи
Карма:
Совет действительно полезный.
Ещё бы програмку создать (генерирующая код), в которой можно было бы вводить тексты поиска и замены (ну и все другие операции) с отметкой галочкой какое действие выполнить. Вот, в эту програмку занёс данные, а потом нажал на кнопочку, - создался файл установки + автоматом файл Деинсталяции. В такую програмку можно было бы внести ещё поле для введения запроса к базе (если модуль требует изменения базы).

Ну примерно такие мысли и развивать можно их обширно. Сделайте пожалуйста о великие программеры! :)

Написал Hamer, 14 февраля 2008 в 22:30 плохой комментарий   0   хороший комментарий
Новостей: 42, комментариев: 2186, Изгнанные
Карма: 50±
Ilya,

Ох, губозакаточные машины все таки рулят, подарить одну? ag

Написал Barrio©, 22 февраля 2008 в 01:52 плохой комментарий   0   хороший комментарий
Новостей: 2, комментариев: 45, Пользователи
Карма:
Тема!

Написал fant1k, 29 марта 2008 в 12:23 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 0, Гости
Карма: ±
а если ошибка, тогда туго ranting2

Написал Ali-baba, 2 апреля 2008 в 20:04 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 0, Гости
Карма: ±
Hamer,внести все переменные в один файл а там...Займусь этим 59

Написал ADM, 30 ноября 2008 в 13:06 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 0, Гости
Карма: ±
народ помогите пожалуйста сделайте пример какого-либо модуля.
зарание блогадарен.

Написал FROG, 5 января 2009 в 22:08 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 0, Гости
Карма: ±
Спасибо большое. Для следующего модуля как раз установку сделаю. Автора класса указывать обязательно, да laughing ?

Написал SoftLend, 30 марта 2009 в 22:06 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 35, Пользователи
Карма:
Целсофту покажите этот класс.Может дойдет как сделать это все )))

Информация



Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.
Анализ Тиц и PR сайта

[removed][removed] [removed] (adsbygoogle = window.adsbygoogle || []).push({}); [removed] ,td { font-family: verdana, arial, sans-serif; color: #666; font-size: 80%; }

[removed][removed] [removed] (adsbygoogle = window.adsbygoogle || []).push({}); [removed]