Files
OG Backup 2cd31285f0 backup: 线上最终版本全量备份
包含所有线上运行的改动:
- 荷官端倒计时卡顿修复(CountdownService TTL+10/前端watchdog)
- 停止下注debounce防重复(8个handle.js)
- 洗码量规则重写(单边/双边/开和不计/百家乐+龙虎)
- 龙虎和局不杀庄闲(全额退回)
- 日志系统(Logger工具类/日志查看/清理脚本)
- 好路提醒异常处理(WaybillRemindService try-catch)
- 扫牌器连接改进(ScanConnectService)
- 牛牛/三卡开牌修复
- .gitignore更新/.DS_Store清理
2026-06-14 14:20:43 +08:00

75 lines
1.8 KiB
PHP

<?php
//应用公共文件
// 版本号
define('VERSION_V','?ver=v10.1.1');
// 强制加载中文语言包
\think\facade\Lang::load(__DIR__ . '/lang/zh-cn.php');
// 加密秘钥
const UC_AUTH_KEY = 'L=<z|6aMF8s.Z_CE~K)e}c[VuG9hlJ#gp02t"1&`';
//自动结算洗码和占股金额能否超过上级余额 1可以超过 0不可以超过
define('SETTLE_MONEY_EXCEED_PARENT_MONTY',1);
// 打印方法
function pre($data){
echo "<pre>";
print_r($data);
echo "</pre>";
}
// 生成一个apiToken 作用Websocket登录
function create_login_token($user): string
{
$curTime = time();
return md5($curTime.$user['encrypt'].$user['password']);
}
//系统非常规MD5加密方法
function think_ucenter_md5($str, $key = 'ThinkUCenter'): string
{
return '' === $str ? '' : md5(sha1($str) . $key);
}
// 定义一个函数获取客户端IP地址
function get_ip(){
global $ip;
if(getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
else if (getenv("HTTP_CLIENT_IP"))
$ip = getenv("HTTP_CLIENT_IP");
else if(getenv("REMOTE_ADDR"))
$ip = getenv("REMOTE_ADDR");
else $ip = "";
return $ip;
}
// 正负数转换
function to_number($number): float
{
$returnNumber = $number > 0 ? -1 * $number : abs($number);
return round($returnNumber,2);
}
// 字符串结果转数组
function string_to_array($string): array
{
if (empty($string)){
return [];
}
$array = explode(",", $string);
$returnArray = [];
foreach ($array as $v){
$item = explode(":", $v);
$returnArray[$item[0]] = $item[1];
}
return $returnArray;
}
// 数组结果转字符串
function array_to_string($array): string
{
$returnArray = [];
foreach ($array as $k => $v){
$returnArray[] = $k.':'.$v;
}
return implode(",", $returnArray);
}