# Util(工具小助手) 说明
> 原Common\Controller\AddonController静态函数,现单独整理出来,方便其他地方使用(非继承AddonController,Model,Behavior,以及其他类库中)
#### 发送微信小程序模板消息
public static function sendXCXMessage( $appId , $appSecret , $openId , $templateId , $info , $formId , $page ) { ... }
| 返回值 | Throws |
| --- | --- |
| array | \Think\Exception |
| 名称 | 类型 | 必填 | 默认值 | 说明 |
| --- | --- | --- | --- | --- |
| $appId | string | 是 | 无 | 微信appid |
| $appSecret | string | 是 | 无 | 微信app_secret |
| $openId | string | 是 | 无 | 当前用户的openid |
| $templateId | string | 是 | 无 | 模板消息ID |
| $info | array | 是 | 无 | 模板消息内容 |
| $formId | string | 是 | 无 | 表单form_id或支付pay_id |
| $page | string | 否 | '' | 点击模板消息跳转地址 |
* * * * *
#### 发送短信
public static function sendSms( $token , $tplId , $phone , $data ) { ... }
| 返回值 | Throws |
| --- | --- |
| array | \Think\Exception |
| 名称 | 类型 | 必填 | 默认值 | 说明 |
| --- | --- | --- | --- | --- |
| $token | string | 是 | 无 | 应用标识 |
| $tplId | string | 是 | 无 | 短信模板消息id |
| $phone | string | 是 | 无 | 手机号 |
| $data | array | 是 | 无 | 短信内容 |
* * * * *
#### 获取微信TOKEN(**`优化中`**)
public static function getWxToken( $appId , $appSecret ) { ... }
| 返回值 | Throws |
| --- | --- |
| array | \Think\Exception |
| 名称 | 类型 | 必填 | 默认值 | 说明 |
| --- | --- | --- | --- | --- |
| $appId | string | 是 | 无 | 微信appid |
| $appSecret | string | 是 | 无 | 微信app_secret |
* * * * *
#### 获取回调主机地址
public static function getNotifyUrlHost( $length ) { ... }
| 返回值 | Throws |
| --- | --- |
| string | 无 |
* * * * *
#### 二维数组排序,按照指定的key 对数组进行排序
public static function multArraySort( $parameters ) { ... }
| 返回值 | Throws |
| --- | --- |
| array | 无 |
| 名称 | 类型 | 必填 | 默认值 | 说明 |
| --- | --- | --- | --- | --- |
| $data | array | 是 | 无 | 将要排序的数组 |
| $data | string | 是 | 无 | 指定排序的key |
| $data | string | 是 | 无 | 排序类型 asc | desc |
* * * * *
#### 获取token信息
public static function getTokenInfo( $token ) { ... }
| 返回值 | Throws |
| --- | --- |
| array | \Think\Exception |
| 名称 | 类型 | 必填 | 默认值 | 说明 |
| --- | --- | --- | --- | --- |
| $token | string | 是 | 无 | 应用标识 |
* * * * *
#### 根据uid获取openid
public static function getOpenIdByUid( $xml ) { ... }
| 返回值 | Throws |
| --- | --- |
| string | \Think\Exception |
| 名称 | 类型 | 必填 | 默认值 | 说明 |
| --- | --- | --- | --- | --- |
| $uid | int | 是 | 无 | UID |
* * * * *
#### 远程请求-Get
public static function requestGet( $url , $isParse ) { ... }
| 返回值 | Throws |
| --- | --- |
| array|string | \Think\Exception |
| 名称 | 类型 | 必填 | 默认值 | 说明 |
| --- | --- | --- | --- | --- |
| $url | string | 是 | 无 | url |
| $isParse | bool | 否 | true | 是否直接解析json字符串 |
* * * * *
#### 远程请求-Post
public static function requestPost( $url , $data , $isParse ) { ... }
| 返回值 | Throws |
| --- | --- |
| array|string | \Think\Exception |
| 名称 | 类型 | 必填 | 默认值 | 说明 |
| --- | --- | --- | --- | --- |
| $url | string | 是 | 无 | url |
| $data | array | 是 | 无 | 请求参数 |
| $isParse | bool | 否 | true | 是否直接解析json字符串 |
* * * * *
#### 生成订单号
public static function makeOrderSn( $prefix ) { ... }
| 返回值 | Throws |
| --- | --- |
| string | 无 |
| 名称 | 类型 | 必填 | 默认值 | 说明 |
| --- | --- | --- | --- | --- |
| $prefix | string | 否 | '' | 单号前缀,如`dg`2017083017256351 |
* * * * *
#### 是否是微信小程序请求
public static function isMicroMessenger( ) { ... }
| 返回值 | Throws |
| --- | --- |
| bool | 无 |
* * * * *
#### 计算两点地理坐标之间的距离
public static function calculateDistance( $longitude1 , $latitude1 , $longitude2 , $latitude2 , $unit , $decimal ) { ... }
| 返回值 | Throws |
| --- | --- |
| float | 无 |
| 名称 | 类型 | 必填 | 默认值 | 说明 |
| --- | --- | --- | --- | --- |
| $longitude1 | float | 是 | 无 | 起点经度 |
| $latitude1 | float | 是 | 无 | 起点纬度 |
| $longitude2 | float | 是 | 无 | 终点经度 |
| $latitude2 | float | 是 | 无 | 终点纬度 |
| $unit | float | 否 | 2 | 单位 1:米 2:公里 |
| $decimal | float | 否 | 2 | 精度,保留小数位数 |