connectDB(config::Inst()); # 建立链接,传入配置文件
}
return $a;
}
/**
* @return \loyalsoft\CRedisUtil 获取全局MEM单例
*/
function gMem() {
static $cmem = null;
if ($cmem == null) {
$nosql = config::Inst()->nosql;
// $use_ext = true; # 使用扩展,测试用(暂时仅支持php7)
// if ($use_ext) {
// $cmem = new \Redis(); # 还是需要重写下, 之前的CRedisUtil已经增加了json_encode/decode.
// $cmem->connect($nosql->host, $nosql->port);
// $cmem->auth($nosql->pwd);
// } else {
$cmem = new CRedisUtil();
$cmem->conn($nosql->host, $nosql->port, $nosql->pwd);
// }
}
return $cmem;
}
/**
* 简化提取全局变量的写法
* @return \globalsettings
*/
function glc() {
return GameConfig::globalsettings();
}
/**
* @return \loyalsoft\Req 全局访问
*/
function req() {
return Req::Ins();
}
/**
* @return \loyalsoft\Data_UserGame 玩家数据
*/
function ctx() {
return req()->userInfo->game;
}
default_timezone(); # 全局范围内启用默认时区 中国时区
$zoneid = "1"; # 定义全局变量zoneid
/**
* 从QueryString初始化分区Id
* @global int $zoneid
*/
function InitZoneId() {
global $zoneid;
if (isset($_REQUEST['zoneid'])) {
$zoneid = $_REQUEST['zoneid']; # 从参数提取到全局变量.
}
}
/**
* 直接返回错误resp并结束运行
* @param int $err
* @param string $msg
*/
function Err($err, $msg = "") {
Index::Err($err, $msg);
}
/**
* 断言快速访问
* @param bool $condition
* @param int/str $err
*/
function my_Assert($condition, $err) {
DebugHelper::assert($condition, $err);
}
/**
* 带换行符输出
*/
function echoLine() {
$cli = (php_sapi_name() === 'cli');
$args = func_get_args();
echo implode(" ", $args) . ( $cli ? PHP_EOL : "
"); # CLI下追加\n, html下追加
}
if (GAME_ONLINE) { # 设置脚本执行的超时时间
set_time_limit(25); # 外网不超过25秒
} else {
set_time_limit(10); # 内网不超过5秒
}