Http中的connection:keep-alive

http请求中的keep-alive 有什么用,怎么用?

25 Dec 2017 Category: 基础

CSS规则的specificity

  • 当Speficity值相等时,后来选择符居上。
  • 当Speficity值不相等时,Speficity值高的选择符生效。
  • 越具体的选择符越有更高的优先级数
  • 最后的CSS规则将覆盖任何之前或冲突的CSS规则。
  • 嵌入式样式的Speficity值高于其它。
  • ID选择符比属性选择符Speficity值要高。
  • 可用IDs去提高选择符的Speficity值
  • 另外,!important规则高于一切,慎用;继承的样式属式不参与优先级数值计算,低于其它规则

05 Dec 2016 Category: CSS

Yii2 源码学习 对象依赖注入(一)

在YII2中,实现对象依赖注入的功能主要通过\yii\base\di 下的相关文件实现。 对象依赖注入的机制有两种,

  • 控制反转(DI) Container
  • 服务定位器ServiceLocator

30 Nov 2016 Category: PHP

Yii2 源码学习 Components

Yii 组件组成了Yii2绝大部分的功能。Controller属于组件。 Action属于组件,Model属于组件。Request属于组件,Response属于组件…只有几个 Object的子类,以及Exception类不是组件。组件实现了三个主要的功能:

  • Property 属性获取设置(继承于Object类)
  • Event 事件
  • Behavior 行为

20 Nov 2016 Category: PHP

Yii2 源码学习 Behavior

Yii2的行为,用来在不修改组件主体代码的情况下,增强组件的功能。 行为可以将自己的方法以及属性注入到组件中。在组件中可以像使用自己的 方法和属性一样使用,通过$this直接调用。行为通过组件能响应被触发的事 件, 从而自定义或调整组件正常执行的代码。

10 Nov 2016 Category: PHP

Yii2 源码学习 Event

虽然PHP语言本身不能实现异步事件,但是并不代表事件在PHP中不是 一个非常有效的代码注入方式。TinkSNS中就有钩子,允许用户在不修 改主体业务代码的时候执行不同的操作。钩子对于一些活动,比如充 值送积分,充值打折扣。不同的活动,不一样,如果每次都要修改充 值业务的主体代码,不仅麻烦,而且容易产生bug。因此可以在充值成 功之后触发充值成功的事件,在事件处理中去处理相应的返现,优惠打 折操作。

30 Oct 2016 Category: PHP

Yii2 源码学习--yii\base\Object

在Yii2中,所有的类的都集成于基类Object。Object对象通过几个php的魔术方法, 实现属性获取,设置,属性是否存在,属性是否可设置的方法。

24 Oct 2016 Category: PHP

PHP 依赖注入

考虑一个问题,如果一个web应用需要一个日志服务,日志服务可以是文本,数据库或者邮件的形式, 而且日志需要将获取的信息格式化指定的形式。应用可以根据需要,任意切换日志服务是文本还是数 据库还是邮件。如果以传统的方式,日志记录的代码类似下面的形式:

18 Aug 2016 Category: PHP