Home>Article>Backend Development> Detailed introduction to PHP type constraints (with code)
This article brings you a detailed introduction to PHP type constraints (with code). It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.
Introduction: The so-called type constraint means that when defining a variable, its type must be specified, and the variable can only store data of this type in the future. Although PHP is a weakly typed language, it already supports type constraints in PHP 5, including objects, interfaces, and arrays. It supports scalar type constraints after PHP 7. Here are a few examples.
Scalar type, array
Specify the type in the parameter. If it is inconsistent, a catchable fatal error will be thrown
As shown above , the same is true for scalar types
Objects, interfaces
Type constraints can also be specified as objects or interfaces. First define a
Human
interface, andBoy
andGirl
two classes implement the interface respectivelyNext, create a new class to test
say(); } /** * Girl 对象类型约束 * @param Girl $girl */ public function girlSay(Girl $girl) { $girl->say(); } /** * Human 接口类型约束 * @param Human $obj */ public function humanRun(Human $obj) { $obj->run(); } } $obj = new Action(); $obj->boySay(new Boy());// a boy say echo '
'; $obj->girlSay(new Girl());// a girl say echo '
'; $obj->humanRun(new Boy());// a boy run echo '
'; $obj->humanRun(new Girl());// a girl runWhen the type constraint is a specific object
Boy
orGirl
, only the required object can be passed in. When the type constraint is interfaceHuman
, you can pass in the classBoy
orGirl
that implements the interface.【Related recommendations:PHP video tutorial】
The above is the detailed content of Detailed introduction to PHP type constraints (with code). For more information, please follow other related articles on the PHP Chinese website!