摘要:今天给同事封装了一个接口,说起接口封装的事情,其实其实很有的聊。很多时候,说一个服务好,一个服务烂,实际上都是在吐槽服务队外暴露的接口好坏。不管什么语言,封装接口,抽象起来,就是由一个函数名,若干个参数,若干个返回值组成的。封装的好坏,就在这几个上面。 函数名 首先是函数名。函数名的好坏很明显,我的 阅读全文
说说框架的数据库迁移功能
2017-03-07 10:20 by 轩脉刃, 2089 阅读, 1 推荐, 收藏, 编辑
摘要:laravel中有个数据库迁移功能,migration。基本用法就是在database/migrations/的文件夹下面创建迁移数据库的类,在这个类中实现两个方法: up表示运行这个数据库迁移你要做些什么,down表示你回滚这次数据库迁移你要做些什么。 这样你就可以使用 php artisan m 阅读全文
shell的exec命令
2017-03-02 21:38 by 轩脉刃, 13029 阅读, 0 推荐, 收藏, 编辑
摘要:工作中遇到运维人员挂supervisor的时候建议启动使用命令control.sh start, 并且在control.sh 里面启动命令: 使用man看下说明,可以看到exec是一个内部命令, 如这里说的exec是将要exec的命令替换当前的这个命令。所以这个意思是 如果你使用了exec之后,你当 阅读全文
前后端分离趋势谈
2017-02-06 00:16 by 轩脉刃, 5925 阅读, 2 推荐, 收藏, 编辑
摘要:最近已经不止一个人和我提起过vue了,在我的前端印象中,我还停留在smarty渲染模版,jquery做js处理。学了一晚上,对现在这种工程化webpack打包生成html,js,css的生产方式越来越有兴趣了。工作年限摆在这里的好处就是经历了不少技术的变革,能从纵向思考下技术的变革和趋势的路子。 想 阅读全文
php内核分析(八)-zend_compile
2016-12-05 10:39 by 轩脉刃, 2758 阅读, 0 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux 回到之前看的zend_eval_stringl 这里的zend_execute执行了两步,第一步是把php编译解析成为opcode的过程,我们就先看这个。 zend_compile_string zend_compile_ 阅读全文
Golang汇编命令解读
2016-12-05 10:12 by 轩脉刃, 11048 阅读, 3 推荐, 收藏, 编辑
摘要:我们可以很容易将一个golang程序转变成汇编语言。 比如我写了一个main.go: 使用命令: 我们就获取了main.S是main.go的汇编版本。 首先这个程序根据TEXT是定义函数的,分为3个部分 这个"". 代表的是这个函数的命名空间。 g(SB) 这里就有个SB的伪寄存器。全名未Stati 阅读全文
php内核分析(七)-扩展
2016-12-01 10:16 by 轩脉刃, 1963 阅读, 0 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux。 我们研究下反射这个扩展。 反射这个扩展目录是存在在:ext/reflection。其实里面的代码很简单。一个.h文件,一个 .c文件。 我们先看下.c文件中,会看到很多ZEND_METHOD 对应的宏: 这里的 代表的是 阅读全文
php内核分析(六)-opcode
2016-11-29 10:44 by 轩脉刃, 2749 阅读, 4 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux 查看opcode php是先把源码解析成opcode,然后再把opcode传递给zend_vm进行执行的。 在php7中,我们能很方便用phpdbg来查看一个文件或者一个函数的opcode了。至于phpdbg的使用,现在网 阅读全文
php内核分析(五)-zval
2016-11-28 10:24 by 轩脉刃, 4577 阅读, 5 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux 实际上,从这个函数开始,就已经进入到了zend引擎的范围了。 实际上是调用Zend/zend_execute_API.c 再进去是调用 这里的retval_ptr为NULL,string_name为"Command lin 阅读全文
php内核分析(四)-do_cli
2016-11-25 11:47 by 轩脉刃, 1464 阅读, 0 推荐, 收藏, 编辑
摘要:这里阅读的php版本为PHP 7.1.0 RC3,阅读代码的平台为linux # main 把剩下的代码增加了下注释全部贴出来了(这个是简化后的main函数,去掉了一些无关紧要的代码段): 其实看伪码很简单: 好了,其实看了一圈,里面最重的函数是do_cli了。 php参数 do_cli里面你会看到 阅读全文