在强类型语言中,类型约束是语法上的要求,即定义一个变量的时候,必须指定类型,并以后也只能存储该类型数据;
php是弱类型,其特点是无需为变量指定类型,而且在其后也可以存储任何类型,不过在php的新语法中,在某些特定场合,针对某些特定类型,也可进行语法约束。
特定场合:函数(方法)的形参变量特定类型:对象类型(类名)、接口类型(接口名)、数组类型(array)、函数类型(callable)
即可以对函数(方法)的参数设定必须使用的类型。只能对对象、接口、数组和函数进行约束。
functionf(类名 $p){}
// 要求参数只能使用该类的对象functionf(接口名 $p){}
// 要求该参数只能使用实现该接口的对象functionf(arrary $p){}
// 要求该参数只能使用数组functionf(callable $p)// 要求该参数只能是一个函数(方法),此时称之为回调函数(方法)