写点什么

【web 开发基础】PHP 中的伪类型参数的函数 (31)

作者:迷彩
  • 2022-11-23
    广东
  • 本文字数:1059 字

    阅读完需:约 3 分钟

前言

伪类型是 PHP 文档里用于表示参数可以使用的类型或者函数的返回类型, 它们并不是 PHP 的数据类型, 只是文档说明,相当于注释。

所以可以简单地理解为伪类型就是代码注释,用于说明函数的参数和返回类型的。

由于 PHP 的伪类型中有 array 和 object,而 php 基本数据类型中也有他们,导致了人们容易混淆。所以在概念上首先要明确,伪类型是文档注释,不是数据类型。

伪类型说明

mixed

mixed 说明一个参数可以接受多种不同的(不一定是所有的)类型。

number

number 说明一个参数可以是 integer 或者 float。

callback

callable 说明参数类型是回调类型

array | object

array|object 意思是参数既可以是 array 也可以是 object。

void

void 指定函数的返回类型为空,即该函数不返回值。

...

在函数的参数列表中使用,...表示等等的意思。表示该函数接收任意数量的参数

注:

伪类型不仅可以标注函数的参数,也可以标注函数的返回类型。

如何增加文档注释

一般是在集成开发开发工具中的函数前面输入 /** 然后回车即可生成相关的文档注释

伪类型参数的函数

伪类型参数的个数如下所示:

mixed funName(mixed $args) //在参数列表中出现类型使用 mixed 描述参数

number funName(number) //在参数列表中出现类型使用 number 描述的参数


PHP 是弱类型语言,不仅在声明变量时不需要指定类型,声明函数时参数也不需要指定类型,所以在 PHP 中函数的每个参数都可以为其传递任意类型的值。因为弱类型是 PHP 语言的最大特点,所以在声明一个函数的时候,可以让同一个参数接受任意类型的值。而在 C/C++或 Java 等强类型编程语言中,如果要声明对数组进行排序的方法,就必须为每一种类型的数组写一个排序方法,这就是所谓函数重载,在 Java 中后来出现泛型解决此类问题,而 PHP 这种弱类型参数是不存在重载的概念的。


在 PHP 中,如果对各种类型的数组进行排序,只要声明一个函数就足够了,所以伪类型参数的函数是 PHP 中最常见的函数应用形式。上面我们简单介绍了 PHP 的伪类型,包括 mixed、number 和 callback 三种,所以在这里就不再赘述。在声明函数时,如果参数能接受多种不同但并不必须是所有类型的值,在函数的说明文档中,就可以使用 mixed 标记这个参数类型。如果说明一个参数可以是 integer 或 float 类型,就可以使用 number 编辑参数。除了参数可以传递伪类型的参数,函数的返回值也可以根据参数类型的不同返回不同类型的值。在 PHP 中,像 empty()、isset()、pow()等都是这样的函数。比如下面的例子:计算两个数和,这时候就可以使用 number


<?php/*** @param number $a * @param number $b */function sum($a, $b){	return $a + $b;}?>
复制代码


发布于: 刚刚阅读数: 7
用户头像

迷彩

关注

我的工作是常年写bug|公众号:编程架构之美 2020-06-18 加入

修bug的菜鸟~公众号:“互联网有啥事”已改名为“编程架构之美”

评论

发布
暂无评论
【web 开发基础】PHP中的伪类型参数的函数  (31)_函数_迷彩_InfoQ写作社区