PHP Conference Japan 2024

如何阅读函数定义(原型)

手册中的每个函数都记录了以便快速参考。了解如何阅读和理解文本将使学习 PHP 变得更加容易。与其依赖示例或复制粘贴,每个人都应该知道如何阅读函数定义(原型)。让我们开始吧

注意先决条件:对类型的基本了解

尽管 PHP 是一种弱类型语言,但了解类型非常重要,因为它们具有重要的意义。

函数定义告诉我们返回什么类型的值。让我们以strlen()的定义作为我们的第一个示例

strlen

(PHP 4, PHP 5, PHP 7)
strlen -- Get string length

Description
strlen ( string $string ) : int

Returns the length of given string.

函数定义的解释
部分 描述
strlen 函数名称。
(PHP 4、PHP 5、PHP 7) strlen() 在所有版本的 PHP 4、5 和 7 中都存在
( string $string ) 此函数的第一个(在本例中也是唯一一个)参数/实参名为string,它是一个字符串
int 此函数返回的值的类型,它是一个整数(即字符串的长度以数字衡量)。

我们可以用通用的方式重写上述函数定义

      function name    ( parameter type   parameter name ) : returned type

许多函数采用多个参数,例如in_array()。其原型如下

      in_array ( mixed $needle, array $haystack , bool $strict = false ) : bool

这意味着什么?in_array() 返回一个布尔值,成功时为true(如果在haystack中找到needle)或失败时为false(如果在haystack中未找到needle)。第一个参数名为needle,它可以是许多不同的类型,因此我们将其称为“混合”。此混合的needle(我们要查找的内容)可以是标量值(字符串、整数或浮点数),也可以是数组haystack(我们要搜索的数组)是第二个参数。第三个可选参数名为strict。所有可选参数都有默认值;如果默认值未知,则显示为?。手册指出strict参数默认为布尔值false。有关每个函数的工作原理的详细信息,请参阅每个函数的手册页。

此外,在函数参数前加上&(与号)符号,允许通过引用传递参数,如下所示

       preg_match ( string $pattern , string $subject , array &$matches = null,
       int $flags = 0 , int $offset = 0 ) : int|false

在此示例中,我们可以看到第三个可选参数&$matches将作为引用传递。

还有一些函数具有更复杂的 PHP 版本信息。以html_entity_decode()为例

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

这意味着此函数仅在 PHP 4.3.0 之后的发布版本中可用。

添加注释

用户贡献的笔记

此页面没有用户贡献的笔记。
To Top