当前位置: 代码网 > it编程>编程语言>Php > PHP验证码语言包预警信息通知总结示例

PHP验证码语言包预警信息通知总结示例

2024年05月18日 Php 我要评论
引言最近在开发php验证码项目,需要使用到不同的语言包和及时的预警短信通知。下面我就好好的总结一下。语言包默认使用浏览器语言,选项分别有自动(识别浏览器语言)、简体中文、繁体英文、英文。self.la

引言

最近在开发php验证码项目,需要使用到不同的语言包和及时的预警短信通知。下面我就好好的总结一下。

语言包

默认使用浏览器语言,选项分别有自动(识别浏览器语言)、简体中文、繁体英文、英文。

self.lang = self.get_lang()  # 当前页语言包
def get_lang(self):
        """ 获取语言包 """
        try:
            dlang = self.data.get("lang", "auto")  # 获取应用配置
            if dlang == "auto":  # 自动
                dlang = self.kg.get("http_accept_language", "zh-cn").split(',')[0].lower()  # 获取浏览器语言,取逗号前字符且转成小写
                if dlang == "zh-hk": dlang = "zh-tw"
                if dlang in ("en-us", "en-gb"): dlang = "en"
            if not exists(url_absolute(f"config/language/{dlang}.py")): dlang = "zh-cn"
            r = import_module(f'config.language.{dlang}').lang.get(self.kg["py_self"], {})  # 加载页面对象
        except exception:
            r = {}
        return r

预警信息

预警信息启用

开启预警信息通知,填写通知的接收邮箱和接收手机号,并设置验证码的每小时预警数量。当超过预警数量,系统将发送通知。

def excess(self, between=0):
        """
        请求/验证次数检测
        :param between: [int] 0 检测请求次数是否超额,1 检测验签次数是否超额,2 检测验签次数是否超额
        :return [int]: 0 正常,未超标,1 小时超标、2 日限超标、3 月限超标
        """
        # 统计的字段名及会员组限制字段名
        field = ["request", "verify", "sign"][between]
        # 时/天/月时间戳
        ceiling = date(format="%y%m%d%h")
        t = [numeric(ceiling), numeric(ceiling[:-2] + "00"), numeric(ceiling[:-4] + "0000")]
        # 当前用户组限制额 [-1, -1, 9000]
        group_limit = json2dict(self.data[field])
        for i in range(0, 3):
            if group_limit[i] != -1:
                count = self.db.list(
                    table="statistics",
                    field=f'sum(`{field}`) as rsum',
                    where=f'`uid` = {self.data["uid"]} && `time` >= {t[i]}',
                    limit=1, shift=1,
                )["rsum"]
                if count > group_limit[i]:
                    return i + 1
        return 0

总结

最后,我大家做了个示例体验:https://www.kgcaptcha.com/demo/,同时也把相关代码上传到github,https://github.com/kgcaptcha

以上就是php验证码语言包预警信息通知总结示例的详细内容,更多关于php验证码语言包信息预警的资料请关注代码网其它相关文章!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com