# 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 | 精度,保留小數位數 |