openresty + lua
lua语法总结:
1. 导入模块(用require来加载,模块是一个类型为table的全局变量)
导入写好的包,举例如下:
2. lua 数据类型(有8种:nil、boolean、number、string、userdata、function、thread、table)
① 布尔类型,可选值 true/false;Lua 中 nil 和 false 为“假”,其它所有值均为“真”。比如 0 和空字符串就是“真”
② Number 类型, 用于表示实数,和 C/C++ 里面的 double 类型很类似。可以使用数学函数 math.floor(向下取整)和 math.ceil(向上取整)进行取整操作。
③ 字符串,3种表达:单引号,双引号,[[ ]]
字符串连接三法: 法一:可以使用操作符“..”(两个点);
法二:也可以使用 string 库函数 string.format
连接字符串。
法三: table 和 table.concat()
来进行很多字符串的拼接。
④ table类型, local tab = { 索引=值,
索引=值,
索引=值 }
栗子: local yu = { height = 183, --print(yu.height) 或 print(yu['height']) ~183
home = 'beijing', --print(yu.home) 或 print(yu['home']) ~'beijing'
12580, --print(yu[1]) ~12580
1024, --print(yu[2]) ~1024
[10] = 365, --print(yu[10]) ~365
['wife'] = 'idontknow' --print(['city']) ~'idon'tknow'
}
3. lua的table类型(关联型数组,你可以用任意类型的值来作数组的索引)
table也是解决模块(module)、包(package)和对象(Object)的。
4. pairs() 和 ipairs()
5. 符号( .. . :)
.. 用于字符串拼接
. 用于调用方法和属性
:用于调用方法和属性,与.不同的是不需要self参数
转载于:https://www.cnblogs.com/yuzhaoblog/p/8036951.html
openresty + lua相关推荐
- OpenResty+Lua实现WAF防火墙
OpenResty+Lua实现WAF防火墙 WAF功能 白名单 黑名单 防止SQL注入 防止CC攻击 若服务器收到CC攻击,一分钟内请求数大于60,则会将对方ip封进黑名单 文件结构 waf 项目文件 ...
- 解决Openresty + lua:lua tcp socket read timed out
解决Openresty + lua:lua tcp socket read timed out 问题描述 报错信息如下图所示: 对应的lua脚本: 一个是timeout还有一个事close失败了 解决 ...
- 使用OpenResty+Lua实现灰度测试(金丝雀)
openresty.org/en/ 下载地址 如何安装部署不是本节内容 在实际项目中遇到重构或者新版本发布, 新老系统如何高效的切换,现目前的答案就是Gateway 网关,有很多开源的网关Kong A ...
- openresty+lua在反向代理服务中的玩法 | WooYun知识库
openresty+lua在反向代理服务中的玩法 | WooYun知识库 openresty+lua在反向代理服务中的玩法 | WooYun知识库 posted on 2016-05-02 19:03 ...
- OpenResty+Lua+redis+mysql实现高性能高可用限流缓存
OpenResty(又称:ngx_openresty) 是一个基于 NGINX 的可伸缩的 Web 平台.并发性能可在10k-1000k OpenResty安装 1.添加仓库执行命令 yum inst ...
- 使用ZeroBrane Studio调试OpenResty Lua脚本
本文固定链接: http://blog.sunqiang.me/2017/08/07/使用zerobrane-studio调试openresty和nginx-lua脚本/ 转载请注明: sunny51 ...
- openresty lua集成kafka
前提 1. 安装openresty,记得安装nginx的监控模块 2. 安装kafka 3. 下载lua+kafka插件:https://github.com/doujiang24/lua-resty ...
- Openresty/Lua/Redis/Mysql实现静态化网页加载
场景 类似于秒杀活动,或者是有一些不常变动的网页,可以通过生成本地html文件,用户访问时直接通过nginx访问本地文件,不走或者减少操作数据库,以降低用户等待时间,提升用户体验. 实践 下载open ...
- openresty+lua在反向代理服务中的玩法
0x01 起因 几天前学弟给我介绍他用nginx搭建的反代,代理了谷歌和维基百科. 由此我想到了一些邪恶的东西:反代既然是所有流量走我的服务器,那我是不是能够在中途做些手脚,达到一些有趣的目的. op ...
最新文章
- WorkFlow入门Step.4—Adding Procedural Elements-For-WF4.0-(续)
- linux服务器升级 需要什么,linux服务器升级node版本
- 民航资源网招聘出奇兵效法麦当劳
- mysql 二进制日志详解_Mysql二进制日志详解
- 北京/苏州内推 | 微软亚洲互联网工程院招聘算法工程师/应用科学家
- Python dir和vars的区别
- 腾讯、百度、小米等7家互联网各大厂的中台建设怎么样了?
- python基础学习20----线程
- android:inputType参数类型说明
- 【SpringCloud实战】一次开发中使用Feign添加动态Header问题思考
- PHP操作文件的常用函数
- 网络编程在线英英词典之服务器代码框架搭建(二)
- 背景动态星空H5特效源代码
- python 制作数据图表_python制作各种数据图表
- 公众号h5拼团购买业务梳理
- 机器学习葡萄酒质量_通过数据和机器学习制作出更好的啤酒和葡萄酒
- PHP 常用函数 - 数组函数
- 2016全国房价趋势
- 利用Origin绘制等高线颜色填充图:初步绘制与细化
- 细数最暖心的地铁营销事件,你最喜欢哪一个?
热门文章
- java设计模式之委派模式
- operator new/delete,operator-> / *【C++运算符重载】
- Java里的容器存放的元素必须是1个对象.
- vue处理json数据的原理_Vue解析json数据的渲染
- dblinq mysql_DBLinq mysql辅助脚本
- 【超实用】HCIE-RS面试真题分享
- 课时 30:理解 RuntimeClass 与使用多容器运行时(贾之光)
- SpringCloud 应用在 Kubernetes 上的最佳实践 — 线上发布(可灰度)
- 抗锯齿_最好的抗锯齿,画质保留提升帧数
- oracle分库分表原理_02. MyCat 的原理,应用场景,分库分表的思想