雪域/think-hookagent

ThinkPHP3.2 composer扩展包开发工具

v0.4 2015-09-12 13:26 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:20:27 UTC


README

在使用ThinkPHP的扩展时,通常需要添加行为配置,即一些应用配置。这需要用户手动处理。

HookAgent的作用是为需要此类功能的扩展包提供一个注入行为的统一入口。使用HookAgent开发的扩展包,最终用户只需要在 Common/Conf/tags.php 中增加一个行为即可。

return array(
 'app_init'=>array(
     'Snowair\Think\Behavior\HookAgent',
 ),
)

开发

如果你的ThinkPHP composer包需要注入行为,只需创建类似这样的文件

<?php
// include.php
if (class_exists( 'Snowair\Think\Behavior\HookAgent' )) {
    \Snowair\Think\Behavior\HookAgent::add('app_begin','Snowair\\Dotenv\\DotEnv');
}

然后在包的composer.json文件中添加require和autoload设置

{
  "name": "xxx/xxx",
  "require": {
    "snowair/think-hookagent": ">=0.1"
  },
  "autoload": {
    "files": ["include.php"]
  }
}
  • 注意:您只能通过HookAgent从 app_begin 开始注入行为。您无法通过HookAgent向app_init注入行为。