PHP验证码的语言包&预警信息通知总结

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

开头的话

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

8.PNG


语言包

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

self.lang=self.get_lang()  # 当前页语言包defget_lang(self):
""" 获取语言包 """try:
dLang=self.data.get("lang", "auto")  # 获取应用配置ifdLang=="auto":  # 自动dLang=self.kg.get("HTTP_ACCEPT_LANGUAGE", "zh-cn").split(',')[0].lower()  # 获取浏览器语言,取逗号前字符且转成小写ifdLang=="zh-hk": dLang="zh-tw"ifdLangin ("en-us", "en-gb"): dLang="en"ifnotexists(url_absolute(f"config/language/{dLang}.py")): dLang="zh-cn"r=import_module(f'config.language.{dLang}').lang.get(self.kg["PY_SELF"], {})  # 加载页面对象exceptException:
r= {}
returnr

9.PNG


预警信息

预警信息启用

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

defexcess(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])
foriinrange(0, 3):
ifgroup_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"]
ifcount>group_limit[i]:
returni+1return0

7.png


总结

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

相关文章
|
1月前
|
程序员 Go PHP
为什么大部分的 PHP 程序员转不了 Go 语言?
【9月更文挑战第8天】大部分 PHP 程序员难以转向 Go 语言,主要因为:一、编程习惯与思维方式差异,如语法风格和编程范式;二、学习成本高,需掌握新知识体系且面临项目压力;三、职业发展考量,现有技能价值及市场需求不确定性。学习新语言虽有挑战,但对拓宽职业道路至关重要。
79 10
|
5月前
|
数据采集 存储 数据挖掘
超越常规:用PHP抓取招聘信息
使用PHP和爬虫代理IP,自动化采集51job网站的招聘信息,关注公司、职位和待遇,数据存储为CSV,提升招聘效率,节省资源。示例代码展示如何设置代理、解析HTML并提取所需信息。此方法有利于人才市场情报获取和企业招聘策略制定。注意实际应用需考虑错误处理和适应网站结构变化。
超越常规:用PHP抓取招聘信息
|
1月前
|
存储 缓存 数据处理
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
本文介绍了PHP会话控制及Web常用的预定义变量,包括`$_REQUEST`、`$_SERVER`、`$_COOKIE`和`$_SESSION`的用法和示例。涵盖了cookie的创建、使用、删除以及session的工作原理和使用,并通过图书上传的例子演示了session在实际应用中的使用。
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
|
1月前
|
JavaScript Java PHP
php学习笔记-php运算符,类型转换,打印输出语句相较于其他语言的特殊部分-day02
本文是第二天的PHP学习笔记,涵盖了PHP中运算符的使用、类型转换方式,以及打印输出语句的特点,展示了其相较于其他编程语言的一些特殊之处。
php学习笔记-php运算符,类型转换,打印输出语句相较于其他语言的特殊部分-day02
|
1月前
|
算法 程序员 Go
PHP 程序员学会了 Go 语言就能唬住面试官吗?
【9月更文挑战第8天】学会Go语言可提升PHP程序员的面试印象,但不足以 solely “唬住” 面试官。学习新语言能展现学习能力、拓宽技术视野,并增加就业机会。然而,实际项目经验、深入理解语言特性和综合能力更为关键。全面展示这些方面才能真正提升面试成功率。
53 10
|
1月前
|
IDE 关系型数据库 PHP
php语言学习
【9月更文挑战第1天】php语言学习
31 3
|
1月前
|
SQL 关系型数据库 MySQL
PHP语言
【9月更文挑战第1天】PHP语言
27 2
|
2月前
|
安全 JavaScript 前端开发
PHP与现代Web开发:探索语言的演变和挑战
【8月更文挑战第9天】本文深入探讨了PHP作为一门历史悠久的编程语言在现代Web开发中的地位,分析了它如何适应不断变化的技术环境。文章首先回顾了PHP的起源及其在Web开发中的早期应用,随后讨论了PHP 7及更高版本带来的性能提升和新特性,以及这些变化对开发者的意义。最后,文章探讨了PHP面临的挑战,包括与其他现代编程语言的竞争,安全性问题,以及社区和生态系统的支持。通过这篇文章,读者将获得对PHP在现代Web开发中角色的全面理解,以及它如何继续发展以适应新的技术要求。
31 3
|
2月前
|
SQL 安全 PHP
探寻PHP的现代演进之路:从Web开发到框架创新——揭秘PHP语言如何引领技术潮流
【8月更文挑战第2天】探索PHP的现代演进:从Web开发到框架创新
51 1