PHP知识、源码、教程、框架、程序分享! -- PHP社区 关于我们 联系我们 联系电话 联系QQ

PHP编程语言在函数参数中提示类的类别

发表时间:2013-09-24 点击:

[本文摘要]:PHP编程 语言在函数参数中提示类的类别 虽然 PHP 不是一个强制类型的语言,你不需要声明使用的变量的类型,但是它却可以让你(如果你需要)在你的函数或者方法的变量中设置类的类...

PHP编程语言在函数参数中提示类的类别

虽然PHP不是一个强制类型的语言,你不需要声明使用的变量的类型,但是它却可以让你(如果你需要)在你的函数或者方法的变量中设置类的类型。

这里有一个PHP函数的典型例子,该函数接收一个函数参数并且首先检查它是否属于它要求的类:

function onlyWantMyClassObjects($obj)
{
	if (!($obj instanceof MyClass)) {
	  die("Only objects of type MyClass can be sent to this function");
	}
	...
}

在每一个相关的函数中都写这样一个对象类型的建议需要大量的工作。为了节省你的时间,PHP可以让你在函数的参数前面设置参数的类别。

通过类的类别提示,相同的例子可以写成如下方式:

function onlyWantMyClassObjects(MyClass $obj)
{
	// ...
}

当这个函数被调用时,PHP会在执行函数的代码前自动执行一个instanceof检查。如果检查失败,它中断运行并打印一个错误。因为检查使用的是instanceof检查,所以发送任何一个满足与类的类别是“是一”关系的对象都是合法的。这个特性在开发的时候非常有用,因为它帮助你确保把只属于函数处理类型的对象传递给该函数。

PHP 5对象模型,包括类和对象的概念、多态和其他重要的面向对象的概念和语义。如果你刚刚接触PHP,但是曾经用过别的面向对象的语言,你可能不能理解为什么人们到现在才可以编写面向对象的代码。如果你曾经使用过PHP 4中面向对象的代码,你现在可能会在为这些新特性而欢快不已。

版权声明:本文系技术人员研究整理的智慧结晶,转载勿用于商业用途,并保留本文链接,侵权必究!

本文链接:http://php.aixc.cn/phpzs/phphanshu/318.html

声明:本站技术及源码均为原创,转载请勿用于商业用途,并注明出处及原文链接,侵权必究。