instanceof关键字

PHP5的另一个新成员是instanceof 关键字。

使用这个关键字可以确定一个对象是类的实例、类的子类,还是实现了某个特定接口(这三种情况都会返回true,否则返回false),并进行相应操作。


例如,假设希望了解名为 $manager 的对象是否为类Employee的实例:

$manager = new Employee();
	...
	if( $manager instanceof Employee ) echo "Yes";

注意:类名没有用任何定界符(引号)环绕。使用定界符将导致语法错误。

instanceof 在同时处理多个对象是非常有用。例如,你可能要重复地调用某个函数,但希望根据给定的对象类型调整函数的行为。可以使用case 语句和instanceof 关键字来实现这个目标。



这个函数的使用还有待跟进,目前理解的还不是很透彻。尤其是“接口”是什么还没有学到。



下面是自己写的一个例子:

<?php  
	class Employee{
		function __construct(){
			echo "I am a Employee.<br/>";
		}
	}


	class Manager extends Employee{
		function __construct(){
			parent::__construct();
			echo "I am a Manager.<br/>";
		}
	}

	$manager = new Manager();
	if($manager instanceof Manager ){
		echo "I am Manager's instance.<br/>";
	}

	if($manager instanceof Employee){
		echo "I am Employee's child.<br/>";
	}
?>

运行结果:
I am a Employee.//Employee构造函数
I am a Manager.//Manager构造函数
I am Manager's instance.
I am Employee's child.



哈哈哈~下面记录一下自己学到的英语知识:


instance 

n. 实例;例子;事例

v.举…为例

网络 例证;实体;个体


instant

n.瞬间;片刻;某一时刻

adj.立即的;立刻的;速食的;即食的

conj.同“as soon as”

网络 刹那;即刻的;速溶的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值