“豪情卷起万重浪,吼吼哈哈-”一学thinkPHP才知道这是个国内研究的php web开发框架,瞬间自豪感如电流一般传遍全身 这就不多不说说 一.控制器 所谓MVC编程,无外乎函数(sometimes类结构),模板,输出处理结果,接收处理请求,模型----说白了就是利用web框架预定义的类,去创建数据库表结构 那么thinkPHP的项目结构如下: 其中public文件夹下的index.php我们不妨理解为网站程序的主入口,他对应的启动了thinkphp内置的一段网站欢迎程序:但public文件夹…
如果浏览器要返回美观排列的json数据,可以安装火狐浏览器的插件 返回XML的数据格式 渲染模板的用法 return $this->fetch('index/index2')效果 扒掉stirp_tags()函数的底裤 注意:如果控制器不是继承自controller类,那么在使用时要先实例化一个request对象 如果继承自controller类,使用以下 动态绑定属性的意义 这样一来,全局都可以使用这个用户变量的值,可以用在权限验证等业务场景…
在同一个硬盘上安装多个 Linux 发行版 以前对多个 Linux 发行版的折腾主要是在虚拟机上完成.我的桌面电脑性能比较强大,玩玩虚拟机没啥问题,但是笔记本电脑就不行了.要在我的笔记本电脑上折腾多个版本的Linux,就得考虑把不同的 Linux 发行版安装到同一个硬盘上.在同一个硬盘上共存 Windows 和 Linux 比较简单,只需要先安装 Windows 后安装 Linux 就可以了,Linux 安装过程中会帮你搞定一切.如果同时安装多个不同发行版的 Linux 会怎样呢?它们会冲突吗?…
虽然网上已经有几篇公开的漏洞分析文章,但都是针对5.1版本的,而且看起来都比较抽象:我没有深入分析5.1版本,但看了下网上分析5.1版本漏洞的文章,发现虽然POC都是一样的,但它们的漏洞触发原因是不同的.本文分析5.0.22版本的远程代码执行漏洞,分析过程如下: (1)漏洞复现 环境php5.5.38+apache. POC:http://172.19.77.44/thinkphp_5.0.22_with_extend/public/index.php?s=index/think\app/inv…
此前博主曾经写过一篇博文,介绍了Django3.0的新特性,其中最主要的就是加入对ASGI的支持,实现全双工的异步通信. 2019年12月2日,Django终于正式发布了3.0版本.怀着无比的期待,我们来尝试一下吧! (附ASGI官方文档地址:https://asgi.readthedocs.io/en/latest/extensions.html) 一.创建Django3工程 利用Pycharm的方便,直接通过virtualenv创建虚拟环境,并安装Django3.0. 打开控制台,看看都安装…
2019年12月2日,Django终于正式发布了3.0版本.怀着无比的期待,我们来尝试一下吧! (附ASGI官方文档地址:https://asgi.readthedocs.io/en/latest/extensions.html) 一.创建Django3工程 利用Pycharm的方便,直接通过virtualenv创建虚拟环境,并安装Django3.0. 打开控制台,看看都安装了哪些库: (venv) D:\work\for_test\django3>pip list Package Versio…
话不多说,先把报错贴出来: 刚开始用slim框架,在设置完自动加载文件和路由文件之后,我写了一个控制器: <?php use \Psr\Http\Message\ServerRequestInterface as Request; use \Psr\Http\Message\ResponseInterface as Response; use \interop\Container\ContainerInterface; class HomeController { protected $app;…
学习一个工具的最好途径,就是使用它.这就好比<极品飞车>玩得好的同学,未必真的会开车,要学习车的驾驶技能,就必须用手触摸方向盘.用脚感受刹车与油门的力道.在IT领域,在深入了解一个系统的原理.实现细节之前,应当先准备好它的运行环境或者源码阅读环境.如果能在实际环境下安装和运行Spark,显然能够提升读者对于Spark的一些感受,对系统能有个大体的印象,有经验的工程师甚至能够猜出一些Spark在实现过程中采用的设计模式.编程模型. 考虑到大部分公司在开发和生产环境都采用Linux操作系统,所以笔…
beego 的路由系统写的很精简 直接将 url 和要映射的 controller 类关联起来就OK: 然后再放一张 login 的 controller 实现,刚好展示下同一个 url 映射到不同方法:…
经过漫长的等待,终于迎来了selenium 3.0 从selenium 1.0 至今,差不多有十多年的历史.这个月终于迎来了selenium3.0 那么selenium3.0 为我们带来了什么? 看一下changelog怎么写的: v3.0.0-beta2 ============ * maven packaging fixes * Update GeckoDriver --port argument in all bindings * System property webdriver.fir…