来 ! 玩玩PHPUnit的数据库测试 (上)

2019-03-25
阅读 6 分钟
5.2k
实际测试是重中之重,正常下来一个需求应当先写测试用例后实现功能代码,如果没有在开发前做测试,那你可以选择写一个错误的断言,使用错误断言来验证代码是否符合预期,而不是根据功能去写测试,这是写测试的一种逆向思维。

Swoole难上手?从EasySwoole开始

2019-03-07
阅读 2 分钟
17.2k
前言我一生的文章都会放在这里,我的博客,我希望每一行代码,每一段文字都能帮助你。[链接]大家好,我是CrazyCodes,我没有消失,最近在准备考试,所以文章出的比较慢,请见谅有些童鞋感觉对Swoole不从下手,也不知在什么业务上使用它,看它这么火却学不会也是挺让人捉急的一件事情。Swoole:面向生产环境的 PHP 异步网...

(一)如何实现一个单进程阻塞的网络服务器

2019-02-27
阅读 3 分钟
4.5k
想要更好的理解,网络编程,写出一个高性能的服务,我们需要花点时间来理解下对于服务器处理客户端的整个流程并且理解一些关键的术语,本来想在本文中补充一些基础理论知识,担心篇幅过长不利于阅读,所以以后补发一些基础知识,接下来进入正题。

Redis哨兵机制

2019-02-25
阅读 3 分钟
12.4k
上篇文章主要说了Redis 复制的内容,但 Redis 复制有一个缺点,当主机 Master 宕机以后,我们需要人工解决切换,比如使用slaveof no one 。实际上主从复制并没有实现,高可用, 高可用侧重备份机器, 利用集群中系统的冗余,当系统中某台机器发生损坏的时候,其他后备的机器可以迅速的接替它来启动服务。

Redis主从复制以及主从复制原理

2019-02-24
阅读 3 分钟
17.2k
Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。

PHP程序员如何优雅的搬砖

2019-01-28
阅读 2 分钟
5.2k
在这里向各位工程师提前拜年 “新年快乐” , 距离年三十已经没有几天了,可能有些朋友还坚持在一线战斗着,有些已经回到家乡陪伴家人。北京每到这个时候都似一座空城,城与城之间表现的那么凄凉。

2019 PHP程序员修炼秘籍

2019-01-06
阅读 3 分钟
10.3k
新的一年,新气象。在2012年我参加LAMP兄弟连的培训,成为一名PHP程序员。那个时候PHP盛行,简直有称霸世界的迹象。当然现在我大PHP也不差。我认为成为PHP程序员的有以下三种途径。

Beego文件上传至七牛云的玩法

2019-01-04
阅读 4 分钟
5.4k
我一生的文章都会放在这里,我的博客,我希望每一行代码,每一段文字都能帮助你。[链接]前言Beego是一款GO语言开发的传统MVC的框架,beego对上传这块的代码封装的也非常简单易用。beego的上传贴出官方的一段代码[链接] {代码...} 这里beego通过 GetFile方法获取文件的name,既设置的 input name="uploadname" 可以通过其...

是时候了解下Travis CI是什么了

2019-01-03
阅读 2 分钟
8.6k
有些朋友一直疑惑Travis CI是个什么东西,网络上搜索后得知的答案是自动测试,自动发布。自动xx 这个名词貌似非常流行,这也是DevOps的一部分,什么?DevOps是什么?我们下一章讲讲这个。

2018 | 我的年度总结请查收

2018-12-24
阅读 2 分钟
3.4k
Hello,各位segmentfault的基友,我是CrazyCodes,第一次在文章内写自己还有点羞涩~~,相信有一部分认识我,当然有更多人不认识我。包括我在自己博客上也木有做过自我介绍。看似比较神秘的一个人,其实我只是一个小卒子。从去年下半年写总结文章到今年年底,收获比较多。segmentfault 让我有一种归属感,这是我工作六年...

通用系统设计之优惠卷

2018-12-21
阅读 4 分钟
6.2k
本应该继续连载手撸框架系列文章的。但最近有一个需求 -> 优惠卷,之前很多朋友让我出一篇优惠卷相关的文章。这不,本章应了大伙的愿。开始我自己的表演 🔥🔥

来!狂撸一款PHP现代化框架 (路由的设计)

2018-12-14
阅读 5 分钟
3.9k
前言上一篇的标题改了一下,以一、二、三为章节对读者来说是种困扰,现在的标题是依照项目进度来编写的。上篇文章地址为 [链接]这一系列文章并不准备写太多章节,大概规划的只有4~5章左右,具体实现代码还请移步Github[链接]本章详细讲解一下Route(路由的实现),Come on Up Image上图大概说明了实现路由要经过两个步骤将...

来!狂撸一款PHP现代化框架 (准备工作)

2018-12-06
阅读 4 分钟
5.8k
前言从本章开始,我们继续造轮子,去完成一款类似于Laravel的现代化PHP框架,为什么说是现代化?因为他必须具备一下几点遵守PSR-4编码规范使用Composer进行包管理标准的HTTP请求方式优雅的使用设计模式开始我们无需关心性能问题,先考虑框架具体需要实现哪些功能,这与实现业务就大不相同了,来!开始我的表演。前期做任...

我与Jetbrains的这些年

2018-11-23
阅读 5 分钟
6.3k
本章主要说一下如何去使用Jetbrains的各类工具,并且在上周参加了Jetbrains开发者日的大会,把参会的感受和体验在这里分享给各位。话不多说,我们进入正题。

PHP To Go 转型手记 (终)

2018-11-16
阅读 3 分钟
6.3k
前言作为一名PHP程序员,我感到荣幸。但在时代不断的变迁中,要具备足够的知识才可生存。那就从Go语言学起把。希望看到本篇文章的你可以对Go有一个基本的认识。本系列文章与我自己学习Go语言的方式去描述。以PHP代码与Go代码的对比加以区分理解。这是转型手记的最后一章,在往下没办法再去写了,需要详细的看书去了解。本...

浅谈重构造成的灾难性毁灭

2018-11-16
阅读 2 分钟
2.8k
只要你确定你是一个真正的程序员,那当你接手一个新项目时,因为每个人的编码规范与风格不同,或者某块代码出现了问题,作为一名向上的程序员,总会想去重构这个项目更严重的都想重写一遍。例如下面的这类代码

PHP To Go 转型手记 (三)

2018-11-04
阅读 2 分钟
4.3k
前言作为一名PHP程序员,我感到荣幸。但在时代不断的变迁中,要具备足够的知识才可生存。那就从Go语言学起把。希望看到本篇文章的你可以对Go有一个基本的认识。本系列文章与我自己学习Go语言的方式去描述。以PHP代码与Go代码的对比加以区分理解。Go没有类的概念,本章在语法使用上来对比PHP与Go之间的区别。声明类PHP {代...

论某教育机构考试系统设计

2018-10-29
阅读 4 分钟
4.9k
前言近期在做一套答题系统,参考了某教育机构的设计。本章跟大家聊聊考试系统中的核心 - 如何考试?简单点说,所谓考试系统就是答题系统,通过答题完成进行判分后返回其答题结果即完成整个流程。当然过程中有些数据需要存储,有些则可在后期查询计算(个人理解),如有误导请速喷如上图所示,一套试卷有N道试题,每道试...

PHP To Go 转型手记 (二)

2018-10-27
阅读 2 分钟
3.9k
前言作为一名PHP程序员,我感到荣幸。但在时代不断的变迁中,要具备足够的知识才可生存。那就从Go语言学起把。希望看到本篇文章的你可以对Go有一个基本的认识。本系列文章与我自己学习Go语言的方式去描述。以PHP代码与Go代码的对比加以区分理解。加载PHP {代码...} Go {代码...} 数组PHP {代码...} Go 数组 & 切片 (...

PHP To Go 转型手记 (一)

2018-10-27
阅读 2 分钟
5.2k
前言作为一名PHP程序员,我感到荣幸。但在时代不断的变迁中,要具备足够的知识才可生存。那就从Go语言学起把。希望看到本篇文章的你可以对Go有一个基本的认识。本系列文章与我自己学习Go语言的方式去描述。以PHP代码与Go代码的对比加以区分理解。变量PHP {代码...} Go {代码...} 常量PHP {代码...} Go {代码...} 打印PHP ...

不要被集成环境束缚住你前进的脚步

2018-10-25
阅读 1 分钟
5.2k
PHP之所以被称为入门快的一门开发语言,其中一个原因是因为他有很完善的集成开发环境,无论是在Windows还是Mac os 上都可一键安装,开启PHP学习之路。我依旧记得当年入门时,仅仅的几分钟则开启了

你可能需要了解下Laravel集合

2018-10-22
阅读 2 分钟
2.8k
集合通过 Illuminate\Support\Collection 进行实例,Laravel的内核大部分的参数传递都用到了集合,但这并不代表集合就是好的。Laravel作为快捷并优雅的开发框架,是有他一定的道理所在的,并非因他的路由、DB、监听器等等。当你需要处理一组数组时,你可能就需要它帮助你快捷的解决实际问题。

再来一波PHP程序员必看书籍

2018-10-10
阅读 2 分钟
6k
前言[链接] 内列出的是已看过的。本篇文章内列出的书籍是准备要看或者正在看的,与大家分享。知识无价,还是建议各位童鞋把更多的资金投入到学习中。书名排名不分前后《编码:隐匿在计算机软硬件背后的语言》[链接]《数学之美(第二版)》[链接]《计算机科学导论》[链接]《PHP Web安全开发实战》[链接]《深入浅出MySQL》[...

Laravel源码解析之Model

2018-09-29
阅读 4 分钟
4.1k
前言 提前预祝猿人们国庆快乐,吃好、喝好、玩好,我会在电视上看着你们。 根据单一责任开发原则来讲,在laravel的开发过程中每个表都应建立一个model对外服务和调用。类似于这样 {代码...} 解析 Laravel的数据操作分两种 DB facade Eloquent ORM 它们除了有各自的特色外,基本的数据操作都是通过 Illuminate\Database\Q...

基于业务设计数据表的总结

2018-09-29
阅读 1 分钟
4.5k
抛去测试、架构来说,数据表设计是指定功能开发的一个起点,如果出现失误将会对未来开发以及运行都会有很大的影响。接下来我们聊聊应该如何根据需求去设计数据表。

Laravel源码解析之路由的使用

2018-09-27
阅读 6 分钟
3.1k
前言 我的解析文章并非深层次多领域的解析攻略。但是参考着开发文档看此类文章会让你在日常开发中更上一层楼。 废话不多说,我们开始本章的讲解。 入口 Laravel启动后,会先加载服务提供者、中间件等组件,在查找路由之前因为我们使用的是门面,所以先要查到Route的实体类。 注册 第一步当然还是通过服务提供者,因为这...

Laravel源码解析之从入口开始

2018-09-26
阅读 4 分钟
7.6k
前言 提升能力的方法并非使用更多工具,而是解刨自己所使用的工具。今天我们从Laravel启动的第一步开始讲起。 入口文件 laravel是单入口框架,所有请求必将经过index.php {代码...} 使用composer是现代PHP的标志 {代码...} 加载启动文件 {代码...} 获取$app是laravel启动的关键,也可以说$app是用于启动laravel内核的钥...

Laravel源码解析之反射的使用

2018-09-21
阅读 4 分钟
3.9k
PHP的反射类与实例化对象作用相反,实例化是调用封装类中的方法、成员,而反射类则是拆封类中的所有方法、成员变量,并包括私有方法等。就如“解刨”一样,我们可以调用任何关键字修饰的方法、成员。当然在正常业务中是建议不使用,比较反射类已经摒弃了封装的概念。

Docker构建程序员的日常

2018-09-18
阅读 4 分钟
5.5k
前言 抛开Docker那些强大的功能,今天我们来部署下本地的开发环境。并写上几个脚本来提高开发效率。 本章以MacOs系统的Docker演示,其他系统作者为接触过。不知是否有差别。 安装 傻瓜式安装,这里就不再阐述了。下载地址如下 [链接] 目录 创建一些目录,就如在项目开发中创建Controller,Model,Service一样。我们将本地...

Supervisor 从入门到放弃

2018-09-14
阅读 3 分钟
18.7k
前言 Supervisor是一个客户端/服务器系统,允许其用户在类UNIX操作系统上控制许多进程。(官方解释) 简单点来讲,就是一个监控脚本运行的工具,不过他可以统一化管理,laravel的队列文档上也有相关使用方式方法,例如 定时脚本的启动、重启、关闭和日志监控 swoole的启动、重启、关闭和日志监控 (众所周知,swoole大部分...