Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Что такое хук и как его использовать?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
morph-x
Отправлено: 28 Ноября, 2011 - 23:00:46
Post Id



Гость


Покинул форум
Сообщений всего: 111
Дата рег-ции: Июнь 2011  


Помог: 0 раз(а)




Не знаю куда отнести эту тему, поэтому пишу здесь. Я так понял (прочитав пару статей) что хук, это что-то типа замены функции что ли. Но более ничего не понял. Вообщем, что такое хук вообще? И главное, как и где его применять? И как это использовать применительно к CMS? Говорят, что это удобно, но что именно удобно, я так и не понял. Короче, помогите кто чем может. Заранее огромное спасибо!
 
 Top
Bio man
Отправлено: 28 Ноября, 2011 - 23:10:48
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




хук заменяет собой определенную ф-цию. то есть позволяет изменить функционал ф-ции не меняя код самой функции. например, хуки используются в phpBB для написания дополнений... можно сказать, что хук это "перегрузка" функции
 
 Top
morph-x
Отправлено: 28 Ноября, 2011 - 23:12:47
Post Id



Гость


Покинул форум
Сообщений всего: 111
Дата рег-ции: Июнь 2011  


Помог: 0 раз(а)




А можно более конкретный пример использования (желательно, применительно к CMS) ?
 
 Top
Bio man
Отправлено: 28 Ноября, 2011 - 23:15:28
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




CMS? разве любая CMS имеет данную технологию? можете разобрать хуки с phpBB, поймете как они работают. и прочтите вот это http://bolzamo[dot]org[dot]ru/214/
 
 Top
morph-x
Отправлено: 28 Ноября, 2011 - 23:33:18
Post Id



Гость


Покинул форум
Сообщений всего: 111
Дата рег-ции: Июнь 2011  


Помог: 0 раз(а)




Вот, почитал эту статью. Уже все понятно, спасибо! Но мне кажется, это что-то схожее с событиями, или это не так? Поправьте, если я ошибаюсь.
 
 Top
Bio man
Отправлено: 28 Ноября, 2011 - 23:47:28
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




да, схожее. только события применяются в ОО подходе, а хуки можно использовать в процедурном подходе. не хочу вас запутывать, скажу, что про хуки и события я не знал до того как вы спросили (про хуки знал, что такие существуют но с чем их едят понятия не имел). лучше подождать мнение знающих людей. но в общих чертах так оно и есть...
 
 Top
Ch_chov
Отправлено: 29 Ноября, 2011 - 04:26:29
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




Хук это реакция на событие. Он позволяет выполнять нужные действия в своем модуле не модифицируя исходный код CMS.

В общих чертах хуки очень похожи на обработчики событий в javascript.
Например, вы в своем модуле можете определить функцию, которая будет вызываться каждый раз при регистрации нового пользователя на сайте, при добавлении нового материала или при запуске крона.
 
 Top
EuGen Администратор
Отправлено: 29 Ноября, 2011 - 08:14:15
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




register_shutdown_function, pcntl_signal - вот примеры функций, регистрирующих обработку определенных событий. Стало быть, это примеры реализации хуков.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
caballero
Отправлено: 29 Ноября, 2011 - 10:08:40
Post Id


Активный участник


Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011  
Откуда: Харьков


Помог: 126 раз(а)




Цитата:
Говорят, что это удобно, но что именно удобно,

Удобно для того кто пишет. Для того кто читает и пытается отладить или разобратся - тихий ужас. Фиг его знает где в каком месте системмы сраьботает или не срабоет или есть ли он вообще некий хук.


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
Ch_chov
Отправлено: 29 Ноября, 2011 - 12:20:39
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




Это от реализации зависит.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB