# 内置函数

苹果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
  • 我们可以看到第二个参数数组中有: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

# 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

# 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

# get_addon_config

获取插件类的配置值,以键值数组的形式返回

# 参数列表

名称 描述 $name 插件标识

# 调用方法

$addonConfigList = get_addon_config('mydemo');
1

# 返回值

Array
(
    [usernmae] => test
    [password] => 123456
)
1
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

# 返回值

bool
1

# set_addon_fullconfig

实时写入插件配置文件

# 参数列表

名称 描述 $name 插件标识 $config 配置数据,二维数组信息,一般框架内部使用,不建议调用

# 调用方法

$result = set_addon_fullconfig('mydemo', [['username'=>'testname', 'type'=>'string', ...]]);
1

# 返回值

bool
1