PHP 函数类型约束


前言

本文就介绍了PHP函数的类型约束基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、类型约束

  • 函数的参数可以指定类型。
  • 函数的参数可以指定必须为对象,接口,数组或者 callable。
  • 使用 NULL 作为参数的默认值,那么在调用函数的时候依然可以使用 NULL 作为实参。
  • 如果一个类或接口指定了类型约束,则其所有的子类或实现也都如此。类型约束不止用在类的函数里,还可以用在普通函数中。
  • 类型约束不能用于标量类型如 int 或 string。Traits 也不允许。
  • 函数调用的参数与定义的参数类型不一致时,会抛出一个可捕获的致命错误。
class MyClass{
	function MyFun(MyClass1 $arg){		//第一个参数为MyClass1类的一个对象
		echo "MyClass->MyFun<br>";
	}

	function MyFun1(array $arg){		//第一个参数为数组
		echo "MyClass->MyFun1<br>";
	}

	function MyFun2(Traversable $arg){	//第一个参数为递归类型
		echo "MyClass->MyFun2<br>";
	}

	function MyFun3(callable $callback, $data){		//第一个参数为回调类型
		echo "MyClass->MyFun3<br>";
		call_user_func($callback,$data);
	}
}

class MyClass1{
	public $var = 'PHP';
}

$foo = new MyClass();
$bar = new MyClass1();

$foo->MyFun($bar);
$foo->MyFun1(array('PHP','Java','Python'));
$foo->MyFun2(new ArrayObject(array()));
$foo->MyFun3('var_dump','hello');

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值