PHP中nstanceof的使用场景有哪些,能做什么
Admin 2022-09-22 群英技术资讯 755 次浏览
这篇文章给大家分享的是PHP中nstanceof的使用场景有哪些,能做什么。小编觉得挺实用的,因此分享给大家做个参考,文中的介绍得很详细,而要易于理解和学习,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
instanceof 用于确定一个 PHP 变量是否属于某一类 class 的实例:
Example #1 对类使用 instanceof
<?php
class MyClass
{
}
class NotMyClass
{
}
$a = new MyClass;
var_dump($a instanceof MyClass);
var_dump($a instanceof NotMyClass);
?> 以上例程会输出: bool(true)
<?php
class ParentClass
{
}
class MyClass extends ParentClass
{
}
$a = new MyClass;
var_dump($a instanceof MyClass);
var_dump($a instanceof ParentClass);
?>
以上例程会输出:
bool(true)
bool(true)
检查一个对象是否不是某个类的实例,可以使用逻辑运算符 not。
Example #3 使用 instanceof 检查对象不是某个类的实例
<?php
class MyClass
{
}
$a = new MyClass;
var_dump(!($a instanceof stdClass));
?>
以上例程会输出:
bool(true)
最后,instanceof也可用于确定一个变量是不是实现了某个接口的对象的实例:
Example #4 对接口使用 instanceof
<?php
interface MyInterface
{
}
class MyClass implements MyInterface
{
}
$a = new MyClass;
var_dump($a instanceof MyClass);
var_dump($a instanceof MyInterface);
?> 以上例程会输出:
<?php
interface MyInterface
{
}
class MyClass implements MyInterface
{
}
$a = new MyClass;
$b = new MyClass;
$c = 'MyClass';
$d = 'NotMyClass';
var_dump($a instanceof $b); // $b is an object of class MyClass
var_dump($a instanceof $c); // $c is a string 'MyClass'
var_dump($a instanceof $d); // $d is a string 'NotMyClass'
?>
以上例程会输出:
bool(true)FALSE。不允许用来检测常量。
<?php
$a = 1;
$b = NULL;
$c = imagecreate(5, 5);
var_dump($a instanceof stdClass); // $a is an integer
var_dump($b instanceof stdClass); // $b is NULL
var_dump($c instanceof stdClass); // $c is a resource
var_dump(FALSE instanceof stdClass);
?>
以上例程会输出:
bool(false)<?php
$d = 'NotMyClass';
var_dump($a instanceof $d); // no fatal error here
?>
以上例程会输出:
bool(false)instanceof 运算符是 PHP 5 引进的。在此之前用 is_a(),但是后来 is_a() 被废弃而用 instanceof 替代了。注意自 PHP 5.3.0 起,又恢复使用 is_a() 了。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
php递归遍历文件夹:1、定义函数,判断是否为目录。2、如果是目录,则打开目录,返回目录句柄。3、循环从目录句柄中开始读取。4、判断读取的文件名是否为目录,如果是目录,则开始递归。
PhpStorm是一款很好用的PHP集成开发工具,新手了解PhpStorm的相关使用是很有必要的,对此这篇文章给大家分享的是有关PhpStorm怎么用的内容,小编觉得挺实用的,因此分享给大家做个参考,有需要的朋友可以看一看。
PHP优化的目的是花最少的代价换来最快的运行速度与最容易维护的代码。本文给大家提供全面的优化技巧。1、echo比print快。2、使用echo的多重参数代替字符串...
laravel常用集合方法有:filter()、search()、chunk()、dump()、map()、zip()、whereNotIn()、max()、pluck()、each()、tap()、pipe()、contains()等等。
在本篇文章里,小编给大家分享了使用PHP检查URL是否包含特定字符串的相关操作方法,有需要的朋友们学习下。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008