# 内置函数
苹果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);
1
2
3
2
3
- 我们可以看到第二个参数数组中有:name和id两种写法,:name在ThinkPHP5中没有这种写法的,这是苹果cms插件系统中特有的写法。这里:name是为了配合插件管理->配置->伪静态使用的,具体使用方法可以参考伪静态章节。
# 返回值
以下返回值都是在未使用伪静态时返回的URL,如果使用了伪静态则返回值会不同。
/addons/mydemo/index/index
/addons/mydemo/index/index.html?id=123&name=myname
http://www.fa.com/addons/mydemo/index/index.html?id=123&name=myname
1
2
3
2
3
# get_addon_list
获得插件列表,此函数将返回本地已安装的插件列表
# 调用方法
$addonList = get_addon_list();
1
# 返回值
二维数组
# get_addon_info
获得插件的基础信息
# 参数列表
名称 描述 $name 插件标识
# 调用方法
$addonInfo = get_addon_info('mydemo');
1
# 返回值
一维数组,示例
Array
(
[name] => mydemo
[title] => 插件名称mydemo
[intro] => FastAdmin插件
[author] => yourname
[website] => https://www.fastadmin.net
[version] => 1.0.0
[state] => 1
[url] => /addons/mydemo.html
)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# get_addon_fullconfig
获取插件类的配置数组,以二级数组的形式返回
# 参数列表
名称 描述 $name 插件标识
# 调用方法
$addonConfigList = get_addon_fullconfig('mydemo');
1
# 返回值
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] =>
)
)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# get_addon_config
获取插件类的配置值,以键值数组的形式返回
# 参数列表
名称 描述 $name 插件标识
# 调用方法
$addonConfigList = get_addon_config('mydemo');
1
# 返回值
Array
(
[usernmae] => test
[password] => 123456
)
1
2
3
4
5
2
3
4
5
# get_addon_instance
获取插件的单例
# 参数列表
名称 描述 $name 插件标识
# 调用方法
$addonInstance = get_addon_instance('mydemo');
1
# 返回值
addons\mydemo\Mydemo Object
1
# set_addon_info
设置插件基础配置信息,将实时更新插件目录下的info.ini文件
# 参数列表
名称 描述 $name 插件标识 $array 配置数据 功能描述
# 调用方法
$result = set_addon_info('mydemo', ['title'=>'标题一']);
1
# 返回值
bool
1
# set_addon_config
设置插件配置信息,一般临时写入配置信息,第三个参数用于实时写入配置信息
# 参数列表
名称 描述 $name 插件标识 $config 配置数据 $writefile 是否写入配置文件,默认为true
# 调用方法
$result = set_addon_config('mydemo', ['username'=>'testname']);
$result = set_addon_config('mydemo', ['username'=>'testname'], true);
1
2
2
# 返回值
bool
1
# set_addon_fullconfig
实时写入插件配置文件
# 参数列表
名称 描述 $name 插件标识 $config 配置数据,二维数组信息,一般框架内部使用,不建议调用
# 调用方法
$result = set_addon_fullconfig('mydemo', [['username'=>'testname', 'type'=>'string', ...]]);
1
# 返回值
bool
1
← 模块预留扩展 雲轉碼(PPVOD)插件 →