电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

PHP基礎之運算符11——類型運算符

瀏覽:23日期:2022-09-14 15:11:23
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)bool(false)instanceof 也可用來確定一個變量是不是繼承自某一父類的子類的實例:Example #2 對繼承類使用?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)檢查一個對象是否不是某個類的實例,可以使用邏輯運算符?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);?>以上例程會輸出:bool(true)bool(true)雖然?instanceof?通常直接與類名一起使用,但也可以使用對象或字符串變量:

<?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)bool(true)bool(false)如果被檢測的變量不是對象,instanceof 并不發出任何錯誤信息而是返回?FALSE。不允許用來檢測常量。Example #6 用?instanceof?檢測其它變量

<?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)bool(false)bool(false)PHP Fatal error: instanceof expects an object instance, constant given然而 instanceof 的使用還有一些陷阱必須了解。在 PHP 5.1.0 之前,如果要檢查的類名稱不存在,instanceof?會調用?__autoload()。另外,如果該類沒有被裝載則會產生一個致命錯誤。可以通過使用動態類引用或用一個包含類名的字符串變量來避開這種問題:Example #7 避免 PHP 5.0 中 instanceof 引起的類名查找和致命錯誤問題

<?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()?了。

標簽: PHP
相關文章:
主站蜘蛛池模板: 户外-组合-幼儿园-不锈钢-儿童-滑滑梯-床-玩具-淘气堡-厂家-价格 | 生物除臭剂-除味剂-植物-污水除臭剂厂家-携葵环保有限公司 | DWS物流设备_扫码称重量方一体机_快递包裹分拣机_广东高臻智能装备有限公司 | 辐射仪|辐射检测仪|辐射巡测仪|个人剂量报警仪|表面污染检测仪|辐射报警仪|辐射防护网 | 断桥铝破碎机_铝合金破碎机_废铁金属破碎机-河南鑫世昌机械制造有限公司 | 上海诺狮景观规划设计有限公司| 上海冠顶工业设备有限公司-隧道炉,烘箱,UV固化机,涂装设备,高温炉,工业机器人生产厂家 | 减速机电机一体机_带电机减速器一套_德国BOSERL电动机与减速箱生产厂家 | 广州迈驰新GMP兽药包装机首页_药品包装机_中药散剂包装机 | 重庆网站建设,重庆网站设计,重庆网站制作,重庆seo,重庆做网站,重庆seo,重庆公众号运营,重庆小程序开发 | 医用空气消毒机-医用管路消毒机-工作服消毒柜-成都三康王 | 超声波气象站_防爆气象站_空气质量监测站_负氧离子检测仪-风途物联网 | 橡胶接头_橡胶软接头_套管伸缩器_管道伸缩器厂家-巩义市远大供水材料有限公司 | 不锈钢反应釜,不锈钢反应釜厂家-价格-威海鑫泰化工机械有限公司 不干胶标签-不干胶贴纸-不干胶标签定制-不干胶标签印刷厂-弗雷曼纸业(苏州)有限公司 | 山东臭氧发生器,臭氧发生器厂家-山东瑞华环保设备 | 卫生纸复卷机|抽纸机|卫生纸加工设备|做卫生纸机器|小型卫生纸加工需要什么设备|卫生纸机器设备多少钱一台|许昌恒源纸品机械有限公司 | 工作服定制,工作服定做,工作服厂家-卡珀职业服装(苏州)有限公司 | 深圳昂为官网-气体分析仪,沼气分析仪,动态配气仪,气体传感器厂家 | 猪I型/II型胶原-五克隆合剂-细胞冻存培养基-北京博蕾德科技发展有限公司 | 气动隔膜阀_气动隔膜阀厂家_卫生级隔膜阀价格_浙江浙控阀门有限公司 | 陶瓷加热器,履带式加热器-吴江市兴达电热设备厂 | 东莞画册设计_logo/vi设计_品牌包装设计 - 华略品牌设计公司 | 电力测功机,电涡流测功机,磁粉制动器,南通远辰曳引机测试台 | 宽带办理,电信宽带,移动宽带,联通宽带,电信宽带办理,移动宽带办理,联通宽带办理 | 沈阳缠绕膜价格_沈阳拉伸膜厂家_沈阳缠绕膜厂家直销 | hc22_hc22价格_hc22哈氏合金—东锜特殊钢 | HV全空气系统_杭州暖通公司—杭州斯培尔冷暖设备有限公司 | 东莞海恒试验仪器设备有限公司 | 实战IT培训机构_IT培训班选大学生IT技术培训中心_中公优就业 | 卡诺亚轻高定官网_卧室系统_整家定制_定制家居_高端定制_全屋定制加盟_定制家具加盟_定制衣柜加盟 | 模型公司_模型制作_沙盘模型报价-中国模型网| 压力控制器,差压控制器,温度控制器,防爆压力控制器,防爆温度控制器,防爆差压控制器-常州天利智能控制股份有限公司 | 多功能三相相位伏安表-变压器短路阻抗测试仪-上海妙定电气 | 珠海网站建设_响应网站建设_珠海建站公司_珠海网站设计与制作_珠海网讯互联 | 彼得逊采泥器-定深式采泥器-电动土壤采样器-土壤样品风干机-常州索奥仪器制造有限公司 | 干式磁选机_湿式磁选机_粉体除铁器-潍坊国铭矿山设备有限公司 | 药品/药物稳定性试验考察箱-埃里森仪器设备(上海)有限公司 | 免费分销系统 — 分销商城系统_分销小程序开发 -【微商来】 | 包塑软管|金属软管|包塑金属软管-闵彬管业 | 影像测量仪_三坐标测量机_一键式二次元_全自动影像测量仪-广东妙机精密科技股份有限公司 | 掺铥光纤放大器-C/L波段光纤放大器-小信号光纤放大器-合肥脉锐光电技术有限公司 |