English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Обзор методов использования поведения Thinkphp5

Создайте директорию behavior под приложением или модулем, в которой создайте файл класса поведения Test.PHP (ниже используется пример модуля home)

namespace app/home/behavior;//внимание на различие в пространствах имен приложений или модулей 
class Test 
{ 
public function run(&$params)
{   
echo $params;  
}

Метод один

1. В файле входа добавьте: define('APP_HOOK',true);

2. Создайте файл tags.PHP в модуле home для определения поведения

return [  
'app_init'=> [  
'app//home//behavior//Test', //внимание на имя пространства имен поведения(далее также) 
], 
'zzzzz'=> [//настройка тега   
'app//home//behavior//Test', 
], 
//................. ];

3. Места в методах контроллера, где необходимо отслеживать behavior

/think/Hook::listen('app_init',$params);//параметр - переменная(далее также) /think/Hook::listen('zzzzz',$params);//настройка

Метод два

1. Привязка поведения к тегу в общих файлах модуля home (common.PHP) или в методе контроллера

/think/Hook::add('app_init','app//home//behavior//Test'); /think/Hook::add('zzzz','app//home//behavior//Test');//настройка

2. В необходимых местах метода контроллера侦听 поведение

/think/Hook::listen('app_init',$params); /think/Hook::listen('zzzzz',$params);//настройка

Метод три

Исполнение поведения direkt v необходимых местах метода контроллера

/think/Hook::exec('app//home//behavior//Test','run',$params);

Метод четыре

Использование закрытой функции direkt v методе контроллера

$a='Закрытая функция'; /think/Hook::add('zzzz',function($a){ var_dump($a);}); /think/Hook::listen('zzzz',$a);

Метод пять

Behavior class привязана к нескольким меткам

1. Определение Test.PHP:

namespace app/home/behavior;
class Test {  
public function app_init(&$params){  
echo 'app_init';  } 
 public function app_end(&$params){   
echo 'app_end';  
}

2. Привязка behavior к меткам в общих файлах (common.PHP) модуля home или в методах контроллера

/think/Hook::add('app_init','app//home//behavior//Test');
/think/Hook::add('app_end','app//home//behavior//Test');

3. Места в методах контроллера, где необходимо отслеживать behavior

/think/Hook::listen('app_init',$params); /think/Hook::listen('app_end',$params);

Обобщение

Указанные выше методы использования behaviors Thinkphp5, представленные редактором, надеюсь, помогут вам. Если у вас есть какие-либо вопросы, пожалуйста, оставьте комментарий, редактор ответит вам своевременно. В этом также очень благодарен всем за поддержку сайта tuition yana.

Декларация: контент этой статьи взят из Интернета, авторские права принадлежат соответствующему автору. Контент предоставлен пользователями Интернета, загружен самостоятельно, сайт не имеет права собственности, не был отредактирован вручную и не несет ответственности за связанные с этим юридические вопросы. Если вы обнаружите контент,涉嫌侵犯版权, пожалуйста, отправьте письмо по адресу: notice#oldtoolbag.com (во время отправки письма замените # на @), чтобы сообщить о нарушении, и предоставьте соответствующие доказательства. При обнаружении факта нарушения, сайт немедленно удаляет涉嫌侵权的内容.

Давай полюбим это