设计模式之观察者模式(Subject/Observer)|发布订阅模式

####观察者模式|发布/订阅模式 观察者模式有时也被称作发布/订阅模式,该模式用于为对象实现发布/订阅功能:一旦主体(发布者)对象状态发生改变,与之关联的观察者(订阅者)对象会收到通知,并进行相应操作。 将一个系统分割成一个一些类相互协作的类有一个不好的副作用,那就是需要维护相关对象间的一致性。 我们不希望为了维持一致性而使各类紧密耦合,这样会给维护、扩展和重用都带来不便。观察者就是

- 阅读全文 -

PHP 金融计算相关的函数之bcsub

####bcsub 作用: 2个任意精度数字的减法 由于PHP是一种弱类型预言,但是其在底层的实现上,是基于C来实现的。想要处理数据的精度的问题上,我们就不能单纯的使用基本的类型了,我们要引入php的扩展```bcmath```,在框架中,一般都支持对此系列函数的支持。 ####bcsub案例:两个任意精度的操作数相减 ``` var_dump(bcsub('yes','no') ===

- 阅读全文 -

Clean code PHP

# Clean Code PHP ## Introduction Software engineering principles, from Robert C. Martin's book [*Clean Code*](https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882),

- 阅读全文 -

Json Web Token (JWT)详解总结

回想在使用swoft的时候,在用户登录的时候,想着采用jwt进行用户无状态授权,想到用过swoft的```Middleware```和```lcobucci/jwt```组件实现用户的登录。 现在总结了一下JWT的一些介绍. ![JWT(Json Web Token).jpg](https://darrykinger.com/usr/uploads/2020/07/3116179869.jpg

- 阅读全文 -

PHP 扩展开发学习笔记之一.扩展的介绍以及扩展的加载过程(php7.1.0源代码)

####扩展介绍 1. 介入PHP的编译,执行阶段:可以介入PHP框架执行的那5个阶段,比如opcache 2. 提供内部函数: 可以定义内部函数扩充PHP的函数功能,比如:array,date等 3. 提供内部类 4. 实现RPC客户端:用来实现与外部服务的交互,比如:Redis,Mysql等。 5. 提升执行性能:PHP是解释型语言,在一些比较消耗CPU的操作使用C语言代替 ###

- 阅读全文 -

Ubuntu系統依賴的問題

``` darrykinger@iZwz9gx93mlg0b8kzke0b9Z:~$ sudo apt-get install php7.0-dev [sudo] darrykinger 的密码: 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 您可能需要运行“apt-get -f install”来纠正下列错误:

- 阅读全文 -