PHP has acquired a solid type system over the last few years and versions. But what is the meaning of a type, a type system, and a subtyping relation?
In this talk, we will cover these topics using PHP's type system and some formal theory, see how PHP stores and checks types, what is Liskov's Substitution Principle (LSP) and how it is enforced by PHP during inheritance.
Finally, we will see how the strict_types declare affects PHP's type system.