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 相关文章推荐
新安装的MySQL数据库需要注意的安全知识
Jul 30 PHP
php目录操作函数之获取目录与文件的类型
Dec 29 PHP
PHP会话控制:Session与Cookie详解
Sep 27 PHP
初识PHP
Sep 28 PHP
主流PHP框架的优缺点对比分析
Dec 25 PHP
Laravel 5框架学习之Blade 简介
Apr 08 PHP
PHP数组操作简单案例分析
Oct 15 PHP
php指定长度分割字符串str_split函数用法示例
Jan 30 PHP
全面解析PHP面向对象的三大特征
Jun 10 PHP
php实现的统计字数函数定义与使用示例
Jul 26 PHP
利用PHP实现开心消消乐的算法示例
Oct 12 PHP
php写入文件不覆盖的实例讲解
Sep 17 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
用PHP连接Oracle数据库
2006/10/09 PHP
php下几个常用的去空、分组、调试数组函数
2009/02/22 PHP
解析php中的escape函数
2013/06/29 PHP
php cookie使用方法学习笔记分享
2013/11/07 PHP
zend framework文件上传功能实例代码
2013/12/25 PHP
php输出1000以内质数(素数)示例
2014/02/16 PHP
php5.3不能连接mssql数据库的解决方法
2014/12/27 PHP
四个PHP非常实用的功能
2015/09/29 PHP
phpmyadmin下载、安装、配置教程
2017/05/16 PHP
用JavaScript获取网页中的js、css、Flash等文件
2006/12/20 Javascript
学习JS面向对象成果 借国庆发布个最新作品与大家交流
2009/10/03 Javascript
JavaScript之appendChild、insertBefore和insertAfter使用说明
2010/12/30 Javascript
script不刷新页面的联动前后代码
2013/09/18 Javascript
jQuery.extend()、jQuery.fn.extend()扩展方法示例详解
2014/05/08 Javascript
JavaScript中exec函数用法实例分析
2015/06/08 Javascript
JS 动态加载js文件和css文件 同步/异步的两种简单方式
2016/09/23 Javascript
js 获取本地文件及目录的方法(推荐)
2016/11/10 Javascript
用jQuery实现优酷首页轮播图
2017/01/09 Javascript
vue实现移动端图片裁剪上传功能
2020/08/18 Javascript
AngularJS实现表单验证功能详解
2017/10/12 Javascript
js实现复制功能(多种方法集合)
2018/01/06 Javascript
vue.js中npm安装教程图解
2018/04/10 Javascript
Vue项目History模式404问题解决方法
2018/10/31 Javascript
layui prompt 设置允许空白提交的方法
2019/09/24 Javascript
Python中表示字符串的三种方法
2017/09/06 Python
通过Python模块filecmp 对文件比较的实现方法
2018/06/29 Python
python 将对象设置为可迭代的两种实现方法
2019/01/21 Python
python2 对excel表格操作完整示例
2020/02/23 Python
在Anaconda3下使用清华镜像源安装TensorFlow(CPU版)
2020/04/19 Python
大课间活动实施方案
2014/03/06 职场文书
感情真挚的毕业生求职信
2014/07/19 职场文书
教师作风整改措施思想汇报
2014/10/12 职场文书
幼师辞职信范文
2015/02/27 职场文书
2015年幼儿园中班工作总结
2015/04/25 职场文书
Java实现简单小画板
2022/06/10 Java/Android
SpringBoot接入钉钉自定义机器人预警通知
2022/07/15 Java/Android