苹果cms插件系统中有内置多个函数用于我们进行调用。
addon_url
用于生成插件控制器方法的url
参数列表
名称 描述 $url 插件标识/控制器名/方法名 $vars 变量参数,默认为空 $suffix 是否生成后缀,默认为true $domain 域名,默认不包含域名
调用方法
$url1 = addon_url('mydemo/index/index'); $url2 = addon_url('mydemo/index/index', [':name'=>'myname', 'id'=>123]); $url3 = addon_url('mydemo/index/index', [':name'=>'myname', 'id'=>123], true, true);
我们可以看到第二个参数数组中有:name和id两种写法,:name在ThinkPHP5中没有这种写法的,这是苹果cms插件系统中特有的写法。这里:name是为了配合插件管理->配置->伪静态使用的,具体使用方法可以参考伪静态章节。
返回值
以下返回值都是在未使用伪静态时返回的URL,如果使用了伪静态则返回值会不同。
/addons/mydemo/index/index /addons/mydemo/index/index.html?id=123&name=myname http://www.domain.com/addons/mydemo/index/index.html?id=123&name=myname
get_addon_list
获得插件列表,此函数将返回本地已安装的插件列表
调用方法
$addonList = get_addon_list();
返回值
二维数组
get_addon_info
获得插件的基础信息
参数列表
名称 描述 $name 插件标识
调用方法
$addonInfo = get_addon_info('mydemo');
返回值
一维数组,示例
Array ( [name] => mydemo [title] => 插件名称mydemo [intro] => FastAdmin插件 [author] => yourname [website] => https://www.fastadmin.net [version] => 1.0.0 [state] => 1 [url] => /addons/mydemo.html )
get_addon_fullconfig
获取插件类的配置数组,以二级数组的形式返回
参数列表
名称 描述 $name 插件标识
调用方法
$addonConfigList = get_addon_fullconfig('mydemo');
返回值
Array ( [0] => Array ( [name] => usernmae [title] => 用户名 [type] => string [content] => Array ( ) [value] => test [rule] => required [msg] => [tip] => [ok] => [extend] => ) [1] => Array ( [name] => password [title] => 密码 [type] => string [content] => Array ( ) [value] => 123456 [rule] => required [msg] => [tip] => [ok] => [extend] => ) )
get_addon_config
获取插件类的配置值,以键值数组的形式返回
参数列表
名称 描述 $name 插件标识
调用方法
$addonConfigList = get_addon_config('mydemo');
返回值
Array ( [usernmae] => test [password] => 123456 )
get_addon_instance
获取插件的单例
参数列表
名称 描述 $name 插件标识
调用方法
$addonInstance = get_addon_instance('mydemo');
返回值
addons\mydemo\Mydemo Object
set_addon_info
设置插件基础配置信息,将实时更新插件目录下的info.ini文件
参数列表
名称 描述 $name 插件标识 $array 配置数据 功能描述
调用方法
$result = set_addon_info('mydemo', ['title'=>'标题一']);
返回值
bool
set_addon_config
设置插件配置信息,一般临时写入配置信息,第三个参数用于实时写入配置信息
参数列表
名称 描述 $name 插件标识 $config 配置数据 $writefile 是否写入配置文件,默认为true
调用方法
$result = set_addon_config('mydemo', ['username'=>'testname']); $result = set_addon_config('mydemo', ['username'=>'testname'], true);
返回值
bool
set_addon_fullconfig
实时写入插件配置文件
参数列表
名称 描述 $name 插件标识 $config 配置数据,二维数组信息,一般框架内部使用,不建议调用
调用方法
$result = set_addon_fullconfig('mydemo', [['username'=>'testname', 'type'=>'string', ...]]);
返回值
bool