摘要: CGI(Common Gateway Interface),通用网关接口。设置了web server的外部程序的规范。 简单理解,就类似于php的接口,定义了输入、环境变量、输出的规范。 interface Cgi { function input(); function env(); functi 阅读全文
posted @ 2020-07-14 15:37 东樵 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 下面对thinkphp6与laravel7的容器做一个比较。 首先理解下三个概念: IOC(控制反转)、DI(依赖注入)、IOC容器 IOC:简单来讲,就是对类的新建、管理交由他人去处理。省去了new Class的步骤。 DI:IOC的实现方式,逐层搜索类的依赖,并实例化。是一种递归的思想。 IOC 阅读全文
posted @ 2020-07-10 12:40 东樵 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 环境:centos7,php7.2.6 只对比相同的功能。 使用了小说Mother_West_Wind's_Children.txt进行替换,大小为155KB,全英文。 使用str_replace函数替换字符串,耗时: 0.017s 0.014s 0.018s 0.020s 0.017s 平均使用0 阅读全文
posted @ 2020-07-07 11:00 东樵 阅读(427) 评论(0) 推荐(0) 编辑
摘要: 这两个都是系统的扩展类。 首先看下他两的实质: 从上图可以得知,两者同样继承了Traversable类,两者是兄弟关系。 以下是这两个类的所处的层级: iterable array Traversable Iterator Generator IteratorAggragate 两者的区别:第一次遇 阅读全文
posted @ 2020-07-07 10:59 东樵 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 1、短标签问题,php在php.ini 中的 short_open_tag 配置指令或者在编译 PHP 时使用了配置选项 --enable-short-tags 时才能使用短标记。 可怕的问题是啥,线上与线下的环境不一样,如果一不小心写了短标签,到时线下没问题,线上运行失败。找问题会很麻烦的。 2、 阅读全文
posted @ 2020-07-07 10:37 东樵 阅读(227) 评论(0) 推荐(0) 编辑
摘要: thinkphp6&laravel7&swoft都使用了composer去加载类库。 访问框架的入口文件,框架的第一件事就是配置自动加载,这个是后面类的调用与实例化的基础工作。 为什么需要自动加载? 当使用未定义的类与接口时,自动去搜索并加载类文件。赶在php抛出错误前做最后的挣扎。 整个compo 阅读全文
posted @ 2020-07-06 23:34 东樵 阅读(152) 评论(0) 推荐(0) 编辑
摘要: thinkphp&laravel&swoft 三个框架的目录设计: 首先来看下三者根目录下,有哪些目录: 一眼望去,根目录下的文件数量,laravel7(10) > thinkphp6(8)= swoft2(8),直观上看,三者的复杂程度似乎成正比。 功能的多样性似乎也成正比。 如果我们将目录结构理 阅读全文
posted @ 2020-07-06 23:33 东樵 阅读(668) 评论(0) 推荐(0) 编辑