PHP中的类型提示(type hinting)功能介绍

   这篇文章主要介绍了PHP中的类型提示(type hinting)功能介绍,本文讲解了类型提示的作用和使用方法以及使用示例,需要的朋友可以参考下

  概述

  从PHP5开始,我们可以使用类型提示来指定定义函数时,函数接收的参数类型。如果在定义函数时,指定了参数的类型,那么当我们调用函数时,如果实参的类型与指定的类型不符,那么PHP会产生一个致命级别的错误(Catchable fatal error)。

  类名称和数组

  在定义函数时,PHP只支持两种类型声明:类名称和数组。类名称表名该参数接收的实参为对应类实例化的对象,数组表明接收的实参为数组类型。下面是一个例子:

   代码如下:

  function demo(array $options){

  var_dump($options);

  }

  在定义demo()函数的时候,指定了函数接收的参数类型为数组。如果我们调用函数时,传入的参数不是数组类型,例如像下面这样的调用:

   代码如下:

  $options='options';

  demo($options);

  那么将产生以下错误:

   代码如下:

  Catchable fatal error: Argument 1 passed to demo() must be of the type array, string given,

  可以使用null作为默认参数

  注意

  有一点需要特别注意的是,PHP只支持两种类型的类型声明,其他任何标量类型的声明都是不支持的,比如下下面的代码都将产生错误:

   代码如下:

  function demo(string $str){

  }

  $str="hello";

  demo($str)

  当我们运行上面的代码时,string会被当做类名称对待,因此会报下面的错误:

  Catchable fatal error: Argument 1 passed to demo() must be an instance of string, string given,

  总结

  类型声明也是PHP面向对象的一个进步吧,尤其是在捕获某种指定类型的异常时非常有用。

  使用类型声明,也可以增加代码的可读性。

  但是,由于PHP是弱类型的语言,使用类型声明又于PHP设计的初衷相悖。

  到底使用还是不使用类型声明,大家见仁见智吧,本菜鸟不:).

时间: 2024-08-03 09:42:18

PHP中的类型提示(type hinting)功能介绍的相关文章

PHP中的类型提示(type hinting)功能介绍_php实例

概述 从PHP5开始,我们可以使用类型提示来指定定义函数时,函数接收的参数类型.如果在定义函数时,指定了参数的类型,那么当我们调用函数时,如果实参的类型与指定的类型不符,那么PHP会产生一个致命级别的错误(Catchable fatal error). 类名称和数组 在定义函数时,PHP只支持两种类型声明:类名称和数组.类名称表名该参数接收的实参为对应类实例化的对象,数组表明接收的实参为数组类型.下面是一个例子: 复制代码 代码如下: function demo(array $options){

Word2010中怎样使用提示更新样式功能

  提示更新样式是指在Word2013文档中,当用户对应用了某种样式的文字内容修改格式后,重新将该样式应用到做出格式修改的文字内容时出现提示,提示用户可以基于最近的更改更新样式,或者重新应用该样式的格式,如图1所示. 图1 "修改样式"对话框 用户可以根据需要启用或取消"提示更新样式"功能,操作步骤如下所述: 第1步,打开Word2013文档窗口,依次单击"文件"→"选项"命令,如图2所示. 图2 选择"选项&quo

extjs4中Ext.resizer.Resizer 大小变更功能介绍

如下:  代码如下 复制代码 [Js] Ext.onReady(function () {     var basic = Ext.create('Ext.resizer.Resizer', {         target: 'basic',         pinned: true,               //是否显示调节边框         width: 200,         height: 100,         minWidth: 100,         minHeigh

类型提示的实现

PHP是弱类型语言,向方法传递参数时候也并不严格检查数据类型. 不过有时需要判断传递到方法中的参数,为此PHP中提供了一些函数,来判断数据的类型. 比如is_numeric(),判断是否是一个数值或者可转换为数值的字符串,比如用于判断对象的类型运算符:instanceof. instanceof 用来测定一个给定的对象是否来自指定的对象类.instanceof 运算符是 PHP 5 引进的. 在此之前是使用的is_a(),不过现在已经不推荐使用. 为了避免对象类型不规范引起的问题,PHP5中引入

基于JS实现密码框(password)中显示文字提示功能代码_javascript技巧

其实实际上实现中并不能让password中显示文字提示,但是我们在工作中有这样的需求,当没输入东西的时候,框内有提示输入密码,但是当输入东西的时候又显示的是*号,那么是如何实现的呢?其实原理很简单,就是放两个文本框,样式以及定位都是一样的.先将type为password的隐藏,只显示type为text的伪密码框,value设置提示内容例如请输入密码.然后当input触发的时候,type为text的input隐藏,让type为password的input显示出来.然后当检测password的val

如何在Word 2010中使用提示更新样式功能

提示更新样式是指在Word2013文档中,当用户对应用了某种样式的文字内容修改格式后,重新将该样式应用到做出格式修改的文字内容时出现提示,提示用户可以基于最近的更改更新样式,或者重新应用该样式的格式,如图2013042405所示. 图2013042405 "修改样式"对话框 用户可以根据需要启用或取消"提示更新样式"功能,操作步骤如下所述: 第1步,打开Word2013文档窗口,依次单击"文件"→"选项"命令,如图201304

Word 2013中使用声音提示功能的方法

在Word2013中,用户可以启用"提供声音反馈"功能,从而实现Word2013操作过程中的声音提示功能.为了启用声音反馈功能,用户需要安装Microsoft Office Sounds加载项,否则无法实现声音提示(点击下载Microsoft Office Sounds加载项). 在Word2013中启用"提供声音反馈"功能的步骤如下所述: 第1步,打开Word2013文档窗口,依次单击"文件"→"选项"按钮,如图201307

在Word 2010中启用提示更新样式功能

提示更新样式是指在Word 2010文档中,当用户对应用了某种样式的文字内容修改格式后,重新将该样式应用到做出格式修改 的文字内容时出现提示,提示用户可以基于最近的更改更新样式,或者重新应用该样式的格式,如图2011122901所示. 图2011122901 "修改样式"对话框 用户可以根据需要启用或取消"提示更新样式"功能,操作步骤如下所述: 第1步,打开Word 2010文档窗口,依次单击"文件"→"选项"命令,如图201

在Word 2007中启用提示更新样式功能

提示更新样式是指在Word2007文档中,当用户对应用了某种样式的文字内容修改格式后,重新将该样式应用到做出格式修改 的文字内容时出现提示,提示用户可以基于最近的更改更新样式,或者重新应用该样式的格式,如图2012040309所示. 图 2012040309 "修改样式"对话框 用户可以根据需要启用或取消"提示更新样式"功能,操作步骤如下所述: 第1 步,打开Word2007文档窗口,依次单击"Office按钮"→"Word选项&quo