$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' => 'USD',
], [
'value' => 2,
'name' => '基金分红钱包',
], [
'value' => 3,
'name' => '银行卡余额',
], [
'value' => 4,
'name' => '银行卡基础额度',
], [
'value' => 5,
'name' => 'wroldcion币',
], [
'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' => '每日交易USD额度',
], [
'value' => 55,
'name' => 'wroldcion币',
], [
'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;
}
}
/** 产品类型
* @param $type
* @return string
*/
function cardNumberType($type = '')
{
if ($type == 1) {
return '股权产品';
} else {
return '无';
}
}
/**钱包字段
* @param $value
* @return array[]|mixed
*/
//USD
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');
//wroldcion币
define('moldType5', 5);
define('moldTypefild5', 'money_five');
//矿机分红钱包--消费体验金
define('moldType6', 6);
define('moldTypefild6', 'money_six');
//理财每日利息
define('moldType7', 7);
define('moldTypefild7', 'money_seven');
//团队佣金
define('moldType8', 8);
define('moldTypefild8', 'money_eight');
//团队补贴
define('moldType9', 9);
define('moldTypefild9', 'money_nine');
//全球通金卡余额
define('moldType10', 10);
define('moldTypefild10', 'money_ten');
//大使收益钱包
define('moldType11', 11);
define('moldTypefild11', 'money_eleven');
//减贫财富钱包
define('moldType12', 12);
define('moldTypefild12', 'money_twelve');
//每日交易世界币额度
define('moldType13', 13);
define('moldTypefild13', 'money_thirteen');
//每日交易USD额度
define('moldType14', 14);
define('moldTypefild14', 'money_fourteen');
//
define('moldType55', 55);
define('moldTypefild55', 'money_five');
//分红钱包
define('moldType15', 15);
define('moldTypefild15', 'money_fifteen');
//团队致富佣金
define('moldType16', 16);
define('moldTypefild16', 'money_sixteen');
//收益钱包
define('moldType17', 17);
define('moldTypefild17', 'money_seventeen');
//卡内余额
define('moldType18', 18);
define('moldTypefild18', 'money_eighteen');
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',
], [
'value' => 6,
'name' => 'money_six',
], [
'value' => 7,
'name' => 'money_seven',
], [
'value' => 8,
'name' => 'money_eight',
], [
'value' => 9,
'name' => 'money_nine',
], [
'value' => 10,
'name' => 'money_ten',
], [
'value' => 11,
'name' => 'money_eleven',
], [
'value' => 12,
'name' => 'money_twelve',
], [
'value' => 13,
'name' => 'money_thirteen',
], [
'value' => 14,
'name' => 'money_fourteen',
], [
'value' => 55,
'name' => 'money_five',
], [
'value' => 15,
'name' => 'money_fifteen',
], [
'value' => 16,
'name' => 'money_sixteen',
], [
'value' => 17,
'name' => 'money_seventeen',
], [
'value' => 18,
'name' => 'money_eighteen',
]
];
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);
/** 矿机产生 */
define('streamType19', 19);
/** 参与矿机每日获赠 */
define('streamType20', 20);
/** 理财抵扣 */
define('streamType21', 21);
/** 手续费 */
define('streamType22', 22);
/** 解冻 */
define('streamType23', 23);
/** 兑换 */
define('streamType24', 24);
/** 理财解冻 */
define('streamType25', 25);
/** 减贫收益 */
define('streamType26', 26);
/** 减贫解冻 */
define('streamType27', 27);
/** 减贫支付 */
define('streamType28', 28);
/** 赠送 */
define('streamType29', 29);
/** 减贫解冻 */
define('streamType30', 30);
/** 平台赠送 */
define('streamType31', 31);
/** 兑换 */
define('streamType32', 32);
/** 平台赠送 */
define('streamType33', 33);
/** 平台赠送 */
define('streamType34', 34);
/** 平台赠送 */
define('streamType35', 35);
/** 减贫财富 */
define('streamType36', 36);
/** 减贫财富每日分红 */
define('streamType37', 37);
/** 平台赠送 */
define('streamType38', 38);
/** 平台赠送 */
define('streamType39', 39);
/** 平台兑换 */
define('streamType40', 40);
/** 平台赠送 */
define('streamType41', 41);
/** 购买脱贫致富 */
define('streamType42', 42);
/** 脱贫致富-日收益 */
define('streamType43', 43);
/** 平台赠送*/
define('streamType44', 44);
/** 支付返还*/
define('streamType45', 45);
define('streamType46', 46);
define('streamType47', 47);
define('streamType48', 48);
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' => '矿机购买',
],
[
'value' => 19,
'name' => '矿机产生',
],
[
'value' => 20,
'name' => '参与矿机每日获赠',
],
[
'value' => 21,
'name' => '理财抵扣',
],
[
'value' => 22,
'name' => '手续费',
],
[
'value' => 23,
'name' => '提现',
],
[
'value' => 24,
'name' => '兑换',
],
[
'value' => 25,
'name' => '理财解冻',
],
[
'value' => 26,
'name' => '减贫收益',
],
[
'value' => 27,
'name' => '减贫解冻',
],
[
'value' => 28,
'name' => '减贫支付',
],
[
'value' => 29,
'name' => '赠送',
],
[
'value' => 30,
'name' => '减贫解冻',
],
[
'value' => 31,
'name' => '平台赠送',
],
[
'value' => 32,
'name' => '兑换',
],
[
'value' => 33,
'name' => '平台赠送',
],
[
'value' => 34,
'name' => '平台赠送',
],
[
'value' => 35,
'name' => '平台赠送',
],
[
'value' => 36,
'name' => '减贫财富',
],
[
'value' => 37,
'name' => '减贫财富每日分红',
],
[
'value' => 38,
'name' => '平台赠送',
],
[
'value' => 39,
'name' => '平台赠送',
],
[
'value' => 40,
'name' => '平台兑换',
],
[
'value' => 41,
'name' => '平台赠送',
],
[
'value' => 42,
'name' => '购买脱贫致富',
],
[
'value' => 43,
'name' => '脱贫致富-日收益',
],
[
'value' => 44,
'name' => '平台赠送',
],
[
'value' => 45,
'name' => '支付返还',
],
[
'value' => 46,
'name' => '平台赠送',
],
[
'value' => 47,
'name' => '兑换',
],
[
'value' => 48,
'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');
// 正则表达式匹配所有
标签
$pattern = '/
]+/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])) {
// 构造新的
标签
if (strpos($src_matches[1], 'http') !== false) {
} else {
return str_replace($src_matches[1], imageToBase64($src_matches[1]), $matches[0]);
}
}
// 如果没有找到src属性,直接返回原始
标签
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 = '51'; // 定义账号前缀,如银行标识
$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 '';
}
}
/**
* 身份证校验
* @param $id
* @return bool
*/
function isValidChineseIDCard18($id)
{
if (!preg_match('/^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(10|11|12))((0[1-9])|([1-2][0-9])|30|31)\d{3}[\dXx]$/i', $id)) {
return false; // 格式不正确
}
// 校验码计算
$id = str_split($id);
$factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
$checksum = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'];
$sum = 0;
foreach ($factor as $key => $value) {
$sum += $id[$key] * $value;
}
$mod = $sum % 11;
return strtoupper($id[17]) === $checksum[$mod]; // 比较校验码
}