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之第四天
Oct 09 PHP
php htmlentities和htmlspecialchars 的区别
Aug 18 PHP
PHP中的MYSQL常用函数(php下操作数据库必备)
Sep 12 PHP
smarty中先strip_tags过滤html标签后truncate截取文章运用
Oct 25 PHP
mysqli_set_charset和SET NAMES使用抉择及优劣分析
Jan 13 PHP
php设计模式之观察者模式的应用详解
May 21 PHP
php将字符串全部转换成大写或者小写的方法
Mar 17 PHP
PHP+jQuery+Ajax实现用户登录与退出
Apr 27 PHP
php cli配置文件问题分析
Oct 15 PHP
PHP中的访问修饰符简单比较
Feb 02 PHP
PHP应用跨时区功能的实现方法
Mar 21 PHP
laravel-admin 中列表筛选方法
Oct 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
COM in PHP (winows only)
2006/10/09 PHP
php读取3389的脚本
2014/05/06 PHP
Yii学习总结之安装配置
2015/02/22 PHP
iis 7下安装laravel 5.4环境的方法教程
2017/06/14 PHP
PHP+AJAX 投票器功能
2017/11/11 PHP
laravel实现前后台路由分离的方法
2019/10/13 PHP
一个加载js文件的小脚本
2007/06/28 Javascript
javascript 有趣而诡异的数组
2009/04/06 Javascript
Js注册协议倒计时的小例子
2013/06/24 Javascript
jQuery提交多个表单的小例子
2013/06/30 Javascript
js 立即调用的函数表达式如何写
2014/01/12 Javascript
运行Node.js的IIS扩展iisnode安装配置笔记
2015/03/02 Javascript
JavaScript制作windows经典扫雷小游戏
2015/03/31 Javascript
jQuery实现的个性化返回底部与返回顶部特效代码
2015/10/30 Javascript
angular.js分页代码的实例
2016/07/27 Javascript
教大家轻松制作Bootstrap漂亮表格(table)
2016/12/13 Javascript
Javascript刷新页面的实例
2017/09/23 Javascript
Paypal支付不完全指北
2020/06/04 Javascript
一篇不错的Python入门教程
2007/02/08 Python
在Python的一段程序中如何使用多次事件循环详解
2017/09/07 Python
django开发教程之利用缓存文件进行页面缓存的方法
2017/11/10 Python
Python django框架应用中实现获取访问者ip地址示例
2019/05/17 Python
python解压TAR文件至指定文件夹的实例
2019/06/10 Python
python实现画循环圆
2019/11/23 Python
Django多进程滚动日志问题解决方案
2019/12/17 Python
Python手动或自动协程操作方法解析
2020/06/22 Python
一款CSS3实现多功能下拉菜单(带分享按)的教程
2014/11/05 HTML / CSS
HTML5 Geolocation API的正确使用方法
2018/12/04 HTML / CSS
美国时尚孕妇装品牌:A Pea in the Pod
2017/07/16 全球购物
SISLEY希思黎官方旗舰店:享誉全球的奢华植物美容品牌
2018/04/25 全球购物
TCP/IP中的TCP和IP分别承担什么责任
2012/04/21 面试题
先进工作者推荐材料
2014/12/23 职场文书
公务员年终个人总结
2015/02/12 职场文书
党员证明信
2015/06/19 职场文书
详解Node.js如何处理ES6模块
2021/05/15 Javascript
《火纹风花雪月无双》预告“神秘雇佣兵” 紫发剑客
2022/04/13 其他游戏