PHP类型约束用法示例


Posted in PHP onSeptember 28, 2016

本文实例讲述了PHP类型约束用法。分享给大家供大家参考,具体如下:

在强类型语言中,类型约束是语法上的要求,即定义一个变量的时候,必须指定类型,并以后也只能存储该类型数据;

php是弱类型,其特点是无需为变量指定类型,而且在其后也可以存储任何类型,不过在php的新语法中,在某些特定场合,针对某些特定类型,也可进行语法约束。

特定场合:函数(方法)的形参变量

特定类型:对象类型(类名)、接口类型(接口名)、数组类型(array)、函数类型(callable)

即可以对函数(方法)的参数设定必须使用的类型。只能对对象、接口、数组和函数进行约束。

function f(类名 $p){}
// 要求参数只能使用该类的对象
function f(接口名 $p){}
// 要求该参数只能使用实现该接口的对象
function f(arrary $p){}
// 要求该参数只能使用数组
function f(callable $p)
// 要求该参数只能是一个函数(方法),此时称之为回调函数(方法)
<?php
class A{}
function f(A $p){}
$obj = new A();
f($obj);

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP无限分类代码,支持数组格式化、直接输出菜单两种方式
May 18 PHP
Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
Jun 14 PHP
浅析PHP中的字符串编码转换(自动识别原编码)
Jul 02 PHP
基于php中使用excel的简单介绍
Aug 02 PHP
Thinkphp多文件上传实现方法
Oct 31 PHP
PHP+JS实现大规模数据提交的方法
Jul 02 PHP
php将远程图片保存到本地服务器的实现代码
Aug 03 PHP
php实现文件预览功能
May 23 PHP
PHP微信模板消息操作示例
Jun 29 PHP
Laravel框架基于ajax实现二级联动功能示例
Jan 17 PHP
PHP从零开始打造自己的MVC框架之路由类实现方法分析
Jun 03 PHP
Laravel框架Eloquent ORM删除数据操作示例
Dec 03 PHP
PHP类和对象相关系统函数与运算符小结
Sep 28 #PHP
PHP序列化操作方法分析
Sep 28 #PHP
PHP类的特性实例分析
Sep 28 #PHP
PHP页面跳转操作实例分析(header方法)
Sep 28 #PHP
PHP会话操作之cookie用法分析
Sep 28 #PHP
PHP session会话操作技巧小结
Sep 27 #PHP
PHP简单预防sql注入的方法
Sep 27 #PHP
You might like
MyEclipse常用配置图文教程
2014/09/11 PHP
php实现的数组转xml案例分析
2019/09/28 PHP
jQuery(1.6.3) 中css方法对浮动的实现缺陷分析
2011/09/09 Javascript
很好用的js日历算法详细代码
2013/03/07 Javascript
使用Node.js实现一个简单的FastCGI服务器实例
2014/06/09 Javascript
最简单的JavaScript图片轮播代码(两种方法)
2015/12/18 Javascript
jQuery中iframe的操作(点击按钮新增窗口)
2016/04/20 Javascript
jquery if条件语句的写法
2016/05/19 Javascript
ionic js 模型 $ionicModal 可以遮住用户主界面的内容框
2016/06/06 Javascript
javascript数组遍历的方法实例分析
2016/09/13 Javascript
微信小程序 弹幕功能简单实例
2017/02/14 Javascript
js 作用域和变量详解
2017/02/16 Javascript
vue-resource 拦截器(interceptor)的使用详解
2017/07/04 Javascript
浅谈vue的踩坑路
2017/08/31 Javascript
浅谈Webpack自动化构建实践指南
2017/12/18 Javascript
nodejs实现的连接MySQL数据库功能示例
2018/01/25 NodeJs
nuxt.js 缓存实践
2018/06/25 Javascript
vue下history模式刷新后404错误解决方法
2018/08/18 Javascript
基于Vue2-Calendar改进的日历组件(含中文使用说明)
2019/04/14 Javascript
[01:46]2020完美世界全国高校联赛秋季赛报名开启
2020/10/15 DOTA
关于Python数据结构中字典的心得
2017/12/04 Python
对Python 窗体(tkinter)文本编辑器(Text)详解
2018/10/11 Python
详解python实现交叉验证法与留出法
2019/07/11 Python
python可视化 matplotlib画图使用colorbar工具自定义颜色
2020/12/07 Python
css3 利用transform打造走动的2D时钟
2020/10/20 HTML / CSS
HTML5中的postMessage API基本使用教程
2016/05/20 HTML / CSS
应届生.NET方向面试题
2015/05/23 面试题
init进程的作用
2012/04/12 面试题
Linux操作面试题
2012/05/16 面试题
优秀员工个人的自我评价
2013/11/29 职场文书
技术总监岗位职责
2013/12/05 职场文书
法律系毕业生求职信
2014/05/28 职场文书
2015年师德师风承诺书
2015/01/22 职场文书
中秋节祝酒词
2015/08/12 职场文书
中国古代史学名著《战国策》概述
2019/08/09 职场文书
Golang入门之计时器
2022/05/04 Golang