方法参考

plugin_url('链接', '参数', '模块名')

生成插件操作链接

链接格式:插件名称/控制器/操作

  1. plugin_url('HelloWorld/Admin/testTable');

带参数

  1. plugin_url('HelloWorld/Admin/testForm', ['name' => 'molly', 'age' => 12]);

默认生成的链接是后台调用的,并且是需要登录验证的,如果需要前台调用,这将第三个参数设置为index

  1. plugin_url('HelloWorld/Admin/testForm', ['name' => 'molly', 'age' => 12], 'index');

plugin_menage('插件名')

显示插件的管理页面

可以在任何控制器return plugin_menage('插件名')来显示插件的后台管理界面。

plugin_action('插件名', '控制器', '动作', '参数')

执行插件动作

比如想执行HelloWorld插件的Admin控制器的add方法。

  1. plugin_action('HelloWorld', 'Admin', 'add');

插件名、控制器、方法名要注意大小写

因为add方法是显示添加页面,所以正确的写法应该是

  1. return plugin_action('HelloWorld', 'Admin', 'add');

可以传入参数

  1. return plugin_action('HelloWorld', 'Admin', 'add', ['name' => 123]);

也可以这样写

  1. plugin_action('HelloWorld/Admin/add');
  2. plugin_action('HelloWorld/Admin/add', ['name' => 123]);

如果插件的添加数据页面由定义插件配置生成的,可以使用

  1. return action('admin/Plugin/add');

plugin_action_exists('插件名', '控制器', '动作')

检查插件控制器是否存在某动作,不存在返回false

  1. plugin_action_exists('HelloWorld', 'Admin', 'add');

或者

  1. plugin_action_exists('HelloWorld/Admin/add');

插件名、控制器、方法名要注意大小写

plugin_config('插件名', '配置值')

获取或设置插件配置

获取插件的所有配置值

  1. // 获取HelloWorld插件的所有配置值
  2. plugin_config('HelloWorld');

获取插件的某个配置值

  1. // 获取HelloWorld插件的username配置值
  2. plugin_config('HelloWorld.username');

也可以同时获取多个配置项的值,配置项用逗号隔开

  1. // 获取HelloWorld插件的username配置值
  2. plugin_config('HelloWorld.username,nickname');

返回值为一个数组

  1. array(
  2. 'username' => 'admin',
  3. 'nickname' => 'm'
  4. );

设置插件的某个配置值

  1. // 设置HelloWorld插件的username配置值为ming
  2. plugin_config('HelloWorld.username', 'ming');

设置不支持同时设置多个,下面的用法是错误的

  1. // 设置HelloWorld插件的username配置值为ming
  2. plugin_config('HelloWorld.username,nickname', 'ming');

批量设置插件的配置值

  1. // 批量设置HelloWorld插件的username和nickname
  2. plugin_config('HelloWorld', ['username' => 'ming', 'nickname' => 'm']);