解密PHP伪类型和伪变量的含义

非 Y 不嫁゛ 提交于 2020-04-05 18:06:22

 php伪类型分类


伪类型是PHP 文档里用于表示参数可以使用的类型或者函数的返回类型。 它们不是 PHP 的数据类型。 只是文档说明,相当于注释。
所以理解的重点就是伪类型就是代码注释,用于说明函数的参数和返回类型的。

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

一、伪类型含义


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

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

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

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

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

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

二、其他

伪类型不仅可以标注函数的参数,也可以标注函数的返回类型。
如何增加文档注释,一般是在开发工具中的函数头部输入 /** 然后直接回车即可生成。

三、示例

如内置函数array_push的文档如下:
/**
 * Push elements onto the end of array
 * @link https://php.net/manual/en/function.array-push.php
 * @param array $array <p>
 * The input array.
 * </p>
 * @param mixed $vars [optional] <p>
 * The pushed variables.
 * </p>
 * @return int the number of elements in the array.
 * @since 7.3
 */
function array_push (array &$array, ...$vars) {}


@param array $array   表示函数中的 $array 参数为 数组类型
@param mixed $vars 表示函数中的 $vars 参数为 混合类型(即任意php数据类型)
参数列表中的  ...$vars 表示接受任意多个参数。

现在一切都明白了吗? 伪类型只是用在注释中。伪变量用在参数列表中。点个赞吧。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!