1、在现代化的 PHP 项目开发中,已经很少显示的出现的 include ,如 @SevenOutman 所说,先基本都是使用 Composer ,来做管理,所有的都通过 composer 来进行自动加载,已经不再需要去手动的 include 。2、 interface 和 abstract ,都可以达到约束的目的,在部分场景下, abstract 可能还占优势,但是他们并不冲突。一个类可以 implements 多个 interface ,但是只能继承一个 abstract 。3、同样的一个类可以 use 多个 trait ,但是只能继承一个父类。4、在面向对象概念中,trait 相当于 mixin 不是必须的也不是标准的,但是他是对于一个语言的加分项,可以使得代码更加容易的组合和复用。
1、在现代化的 PHP 项目开发中,已经很少显示的出现的
include
,如 @SevenOutman 所说,先基本都是使用 Composer ,来做管理,所有的都通过 composer 来进行自动加载,已经不再需要去手动的 include 。2、 interface 和 abstract ,都可以达到约束的目的,在部分场景下, abstract 可能还占优势,但是他们并不冲突。
一个类可以 implements 多个 interface ,但是只能继承一个 abstract 。
3、同样的一个类可以 use 多个 trait ,但是只能继承一个父类。
4、在面向对象概念中,trait 相当于 mixin 不是必须的也不是标准的,但是他是对于一个语言的加分项,可以使得代码更加容易的组合和复用。