类型运算符

类型运算符

instanceof 用于确定一个 PHP 变量是否属于某一类 class 的实例:

<?php
class MyClass
{
}

class NotMyClass
{
}
$a = new MyClass;

var_dump($a instanceof MyClass);
var_dump($a instanceof NotMyClass);
?>

以上例程会输出:

bool(true)
bool(false)

 

instanceof 也可用来确定一个变量是不是继承自某一父类的子类的实例:

<?php
class ParentClass
{
}

class MyClass extends ParentClass
{
}

$a = new MyClass;

var_dump($a instanceof MyClass);
var_dump($a instanceof ParentClass);
?>

 

以上例程会输出:

bool(true)
bool(true)
最后,instanceof也可用于确定一个变量是不是实现了某个接口的对象的实例:
对接口使用 instanceof
<?php
interface MyInterface
{
}

class MyClass implements MyInterface
{
}

$a = new MyClass;

var_dump($a instanceof MyClass);
var_dump($a instanceof MyInterface);
?>

以上例程会输出:

bool(true)
bool(true)

 http://php.net/manual/zh/language.operators.type.php

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113000.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • voliate理解

    voliate理解voliatevoliate定义java编程语言允许线程访问共享变量,为了确保共享变量能被准确和一致的更新,线程应该确保通过排他锁单独获得这个变量。Java语言提供了volatile,在某些情况下比锁更加方便。如果一个字段被声明成volatile,java线程内存模型确保所有线程看到这个变量的值是一致的。volatile可以保证线程可见性且提供了一定的有序性,但是无法保证原子性。在JVM…

    2022年6月5日
    109
  • 动态规划优缺点_巴西优化航空路线利用率

    动态规划优缺点_巴西优化航空路线利用率C 国有 n 个大城市和 m 条道路,每条道路连接这 n 个城市中的某两个城市。任意两个城市之间最多只有一条道路直接相连。这 m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双向通行的道路在统计条数时也计为 1 条。C 国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价格不一定相同。但是,同一种商品在同一个城市的买入价和卖出价始终是相同的。商人阿龙来到 C 国旅游。当他得知“同一种商品在不同城市的价格可能会不同”这一信息之后,便决定在旅游的同时,利用商品在

    2022年8月8日
    4
  • js手机号正则校验_正则表达式验证手机号码格式

    js手机号正则校验_正则表达式验证手机号码格式这篇文章主要介绍了2022手机号码JS正则表达式验证实例代码,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下​概念正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。简介正则表达式是对字符串(包括普通字符(例如,a到z之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字

    2022年9月15日
    3
  • coco数据集语义分割_实例分割模型

    coco数据集语义分割_实例分割模型COCO数据集格式COCO的全称是CommonObjectsinCOntext,是微软团队提供的一个可以用来进行图像识别的数据集,用于进行物体检测、分割、关键点检测、添加字幕等。JSON文件的基本格式,以实例分割为例,主要有五个部分:info、licenses、images、annotations、categories{“info”:info,”licenses”:[license],”images”:[image],”annotatio

    2022年8月23日
    12
  • java有序map[通俗易懂]

    java有序map[通俗易懂]我们知道TreeMap的key是有顺序的,是自然顺序,也可以指定比较函数。但TreeMap默认不是按插入的顺序。为了让Map按照插入顺序显示,可以使用LinkedHashMap吧。它内部有一个链表,保持插入的顺序。迭代的时候,也是按照插入顺序迭代,而且迭代比HashMap快。转载于:https://www.cnblogs.com/lixiaoran/p/6780898.html…

    2022年9月24日
    2
  • RocketMQ的长轮询消费方式

    RocketMQ的长轮询消费方式1.Push推送方式(即Server端推送消息给client):当Server收到消息发送者发送过来的消息后,Server端主动把消息推送给client,这个方式实时性比较好,但是增加了Server的工作负担,对Server的性能造成影响;另外Client如果不能够及时处理Server推送的消息,也是很大的问题。2.Pull拉取方式(即Client从Server拉取消息):Client…

    2022年6月24日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号