| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409 |
- <?php
- /**
- * Here is your custom functions.
- */
- use Firebase\JWT\JWT;
- use Firebase\JWT\Key;
- /* @登录失效码*/
- define('USER_INVALID', 4008);
- /* @无权限码*/
- define('USER_AUTH', 4009);
- /* @错误码*/
- define('ERROR', 400);
- /* @成功码*/
- define('SUCCESS', 0);
- function error($msg = '请求成功', $data = [], $code = ERROR)
- {
- $result = [
- 'code' => $code,
- 'message' => $msg,
- 'time' => time(),
- 'data' => $data,
- ];
- $result = encrypt($result);
- return json($result);
- }
- function success($data = [], $msg = '请求成功', $code = 200, $count = 0)
- {
- $result = [
- 'code' => $code,
- 'message' => $msg,
- 'data' => $data,
- 'count' => $count
- ];
- $result = encrypt($result);
- return json($result);
- }
- function adminsuccess($data = [], $msg = '请求成功', $code = 200, $count = 0)
- {
- $result = [
- 'code' => $code,
- 'message' => $msg,
- 'data' => $data,
- 'count' => $count
- ];
- return json($result);
- }
- /** 加密
- * @param $data
- * @return void
- */
- function jwtEncode($data)
- {
- return JWT::encode($data, getenv('JWT_PRIVATEKEY'), 'HS256');
- }
- /** 解密
- * @param $data
- * @return void
- */
- function jwtDecode($data)
- {
- try {
- $data = JWT::decode($data, new Key(getenv('JWT_PRIVATEKEY'), 'HS256'));
- } catch (\Exception $exception) {
- throw new \Exception('验证失败');
- }
- return $data;
- }
- /** 钱包名称
- * @param $value
- * @return array[]|mixed
- */
- function moldType($value = '')
- {
- $arr = [
- [
- 'value' => 1,
- 'name' => '总资产',
- ], [
- 'value' => 2,
- 'name' => '脱贫金',
- ], [
- 'value' => 3,
- 'name' => '团队金',
- ], [
- 'value' => 4,
- 'name' => '充值钱包',
- ], [
- 'value' => 5,
- 'name' => '卡余额',
- ]
- ];
- if ($value) {
- $data = collect($arr)->where('value', $value)->first();
- return $data['name'];
- } else {
- return $arr;
- }
- }
- /** 产品类型
- * @param $type
- * @return string
- */
- function cardNumberType($type = '')
- {
- if ($type == 1) {
- return '股权产品';
- } else {
- return '无';
- }
- }
- /**钱包字段
- * @param $value
- * @return array[]|mixed
- */
- //总资产
- define('moldType1', 1);
- define('moldTypefild1', 'money');
- //脱贫金
- define('moldType2', 2);
- define('moldTypefild2', 'money_one');
- //推荐奖钱包
- define('moldType3', 3);
- define('moldTypefild3', 'money_two');
- //充值钱包
- define('moldType4', 4);
- define('moldTypefild4', 'money_four');
- //卡余额
- define('moldType5', 5);
- define('moldTypefild5', 'money_five');
- function moldTypefild($value = '')
- {
- $arr = [
- [
- 'value' => 1,
- 'name' => 'money',
- ], [
- 'value' => 2,
- 'name' => 'money_one',
- ], [
- 'value' => 3,
- 'name' => 'money_two',
- ], [
- 'value' => 4,
- 'name' => 'money_four',
- ], [
- 'value' => 5,
- 'name' => 'money_five',
- ]
- ];
- if ($value) {
- $data = collect($arr)->where('value', $value)->first();
- return $data['name'];
- } else {
- return $arr;
- }
- }
- /** 流水类型 */
- /** 注册奖励 */
- define('streamType1', 1);
- /** 签到 */
- define('streamType2', 2);
- /** 邀请*/
- define('streamType3', 3);
- /** 提现 */
- define('streamType4', 4);
- /** 购买 */
- define('streamType5', 5);
- /** 提现驳回 */
- define('streamType6', 6);
- /** 平台充值 */
- define('streamType7', 7);
- /** 平台扣款 */
- define('streamType8', 8);
- /** 华润赠送 */
- define('streamType9', 9);
- /** 返佣 */
- define('streamType10', 10);
- /** 实名奖励 */
- define('streamType11', 11);
- /** 申请 */
- define('streamType12', 12);
- /** 数据恢复 */
- define('streamType13', 13);
- /** 充值 */
- define('streamType14', 14);
- /** 充值反点 */
- define('streamType15', 15);
- /** 商品购买 */
- define('streamType16', 16);
- /** 国债债券购买 */
- define('streamType17', 17);
- /** 转账 */
- define('streamType18', 18);
- function streamType($value = '')
- {
- $arr = [
- [
- 'value' => 1,
- 'name' => '注册奖励',
- ],
- [
- 'value' => 2,
- 'name' => '天天领钱',
- ],
- [
- 'value' => 3,
- 'name' => '邀请福利',
- ],
- [
- 'value' => 4,
- 'name' => '提现',
- ],
- [
- 'value' => 5,
- 'name' => '购买',
- ],
- [
- 'value' => 6,
- 'name' => '提现驳回',
- ],
- [
- 'value' => 7,
- 'name' => '平台充值',
- ],
- [
- 'value' => 8,
- 'name' => '平台扣款',
- ],
- [
- 'value' => 9,
- 'name' => '华润赠送',
- ],
- [
- 'value' => 10,
- 'name' => '返佣',
- ],
- [
- 'value' => 11,
- 'name' => '实名奖励',
- ],
- [
- 'value' => 12,
- 'name' => '申请',
- ],
- [
- 'value' => 13,
- 'name' => '数据恢复',
- ],
- [
- 'value' => 14,
- 'name' => '充值',
- ],
- [
- 'value' => 15,
- 'name' => '充值反点',
- ],
- [
- 'value' => 16,
- 'name' => '商品购买',
- ],
- [
- 'value' => 17,
- 'name' => '国债债券购买',
- ],
- [
- 'value' => 18,
- 'name' => '转账',
- ]
- ];
- if ($value) {
- $data = collect($arr)->where('value', $value)->first();
- return $data['name'];
- } else {
- return $arr;
- }
- }
- /** 获取未来时间 */
- function futureDay($day)
- {
- return date('Y-m-d', strtotime("+$day days")) . ' 23:59:59';
- }
- /** 后台登录名称 */
- function adminName()
- {
- return md5(getenv('PROJECT') . date('Ymd'));
- }
- function imgtxt($html)
- {
- if (empty($html)) {
- return $html;
- }
- // 要替换的目标字符串
- $target = getenv('IMG');
- // 正则表达式匹配所有<img>标签
- $pattern = '/<img[^>]+/i';
- // 正则表达式匹配src属性
- $src_pattern = '/src="([^"]+)/i';
- // 执行替换
- $replaced_html = preg_replace_callback($pattern, function ($matches) use ($src_pattern, $target) {
- // 匹配src属性
- preg_match($src_pattern, $matches[0], $src_matches);
- // 如果找到了src属性,则替换它
- if (isset($src_matches[1])) {
- // 构造新的<img>标签
- if (strpos($src_matches[1], 'http') !== false) {
- } else {
- return str_replace($src_matches[1], imageToBase64($src_matches[1]), $matches[0]);
- }
- }
- // 如果没有找到src属性,直接返回原始<img>标签
- return $matches[0];
- }, $html);
- // 输出替换后的HTML内容
- return $replaced_html;
- }
- function uuid()
- {
- $uuid = \support\Db::table('wa_users')->orderByDesc('uuid')->value('uuid');
- return bcadd($uuid, bcadd(mt_rand(100, 999), date('d')));
- }
- /**
- * 生成银行卡号
- * @param $length
- * @return string
- */
- function generateBankAccountNumber($length = 19)
- {
- $prefix = '6214'; // 定义账号前缀,如银行标识
- $suffixLength = $length - strlen($prefix); // 计算后缀的长度
- $suffix = substr(mt_rand(100000000000000, 999999999999999), 0, $suffixLength); // 随机生成后缀
- return $prefix . $suffix;
- }
- /**
- * 生成证 书编号
- * @return string
- * @throws \Random\RandomException
- */
- function generateCertificateNumber($length = 12)
- {
- $prefix = 'JZYH'; // 定义账号前缀,如银行标识
- $suffixLength = $length - strlen($prefix); // 计算后缀的长度
- $suffix = substr(mt_rand(100000000000000, 999999999999999), 0, $suffixLength); // 随机生成后缀
- return $prefix . $suffix;
- }
- /**
- * 生成随机字母
- * @param $length
- * @return string
- */
- function RandomAlphaNum($length = 4)
- {
- $randomString = '';
- for ($i = 0; $i < $length; $i ++) {
- $randomString .= chr(rand(65, 90)); // 生成大写字母 'A' 到 'Z'
- // 如果需要包含小写字母,取消下面这行的注释
- // $randomString .= chr(rand(97, 122)); // 生成小写字母 'a' 到 'z'
- }
- return $randomString;
- }
- function encrypt($data)
- {
- $info = openssl_encrypt (json_encode ($data, JSON_UNESCAPED_UNICODE), 'AES-128-ECB', getenv ("JWT_AESKEY"), OPENSSL_RAW_DATA) ;
- return base64_encode ($info);
- }
- function imageToBase64($imagePath)
- {
- if (file_exists('./public'.$imagePath) && !empty($imagePath)) {
- // $image = file_get_contents('./public'.$imagePath);
- // $base64 = base64_encode($image);
- // return 'data:image/jpeg;base64,' . $base64; // 这里假设图片为JPEG格式,根据实际需要修改
- return getenv('IMG').$imagePath;
- } else {
- return '';
- }
- }
|