Maison > développement back-end > tutoriel php > Comment définir des types de fonctions et des paramètres en PHP ?

Comment définir des types de fonctions et des paramètres en PHP ?

PHPz
Libérer: 2024-04-10 12:12:02
original
636 Les gens l'ont consulté

En PHP, vous pouvez utiliser des indices de type pour définir le type et les paramètres d'une fonction : Définir les types de paramètres : Utilisez deux points (:) et le nom du type après le nom du paramètre. Types pris en charge : int, float, string, bool, etc. Types composites : vous pouvez utiliser une barre verticale (|) pour indiquer qu'un paramètre peut accepter plusieurs types possibles. Type de valeur de retour : utilisez deux points (:) et le nom du type avant le nom de la fonction. Exemple pratique : les astuces de saisie aident à garantir l’exactitude et la maintenabilité du code.

如何在 PHP 中定义函数的类型和参数?

Comment définir le type et les paramètres d'une fonction en PHP

En PHP, vous pouvez utiliser des astuces de type pour définir les types de paramètres et de valeurs de retour d'une fonction. Cela permet de garantir l'exactitude et la maintenabilité du code, et peut être obtenu en utilisant PHP 7.0 ou supérieur.

Définir les types de paramètres :

Pour définir les types de paramètres de fonction, utilisez deux points (:) et le nom du type après le nom du paramètre :

function greet(string $name): void {}
Copier après la connexion

Dans l'exemple ci-dessus, la fonction greet accepte a Le paramètre $name est de type string et ne renvoie pas de valeur (le type de retour est donc void). greet 函数接受一个类型为 string$name 参数,并且不返回值(因此返回类型为 void)。

支持的类型:

PHP 支持以下类型提示:

  • 基础类型:int, float, string, bool
  • 空类型:null
  • 数组:array
  • 回调:callable
  • 类:ClassName(可以是接口或父类)

复合类型:

可以使用竖线(|)表示复合类型,表示参数可以接受多个可能类型:

function calculate(int|float $number) {}
Copier après la connexion

返回值类型:

要定义函数返回值类型,请在函数名前使用冒号(:)和类型名称:

function getFullName(): string {}
Copier après la connexion

实战案例:

以下是一个使用类型提示的实际示例:

<?php

class Person
{
    private string $firstName;
    private string $lastName;

    public function __construct(string $firstName, string $lastName)
    {
        $this->firstName = $firstName;
        $this->lastName = $lastName;
    }

    public function getFullName(): string
    {
        return $this->firstName . ' ' . $this->lastName;
    }
}

function createPerson(string $firstName, string $lastName): Person
{
    return new Person($firstName, $lastName);
}

$person = createPerson('John', 'Doe');

echo $person->getFullName(); // 输出:John Doe
Copier après la connexion

在这个示例中,Person 类的构造函数和 createPerson

🎜Types pris en charge : 🎜🎜🎜PHP prend en charge les astuces de type suivantes : 🎜
  • 🎜Types de base : 🎜int, float, string , bool
  • 🎜Type vide : 🎜null
  • 🎜Array : 🎜array code>
  • 🎜Callback : 🎜callable
  • 🎜Class : 🎜ClassName (peut être une interface ou une classe parent) li>
🎜🎜Type composite : 🎜🎜🎜 Vous pouvez utiliser une barre verticale (|) pour indiquer un type composite, indiquant que le paramètre peut accepter plusieurs types possibles : 🎜rrreee🎜🎜Type de valeur de retour : 🎜 🎜🎜 Pour définir le type de valeur de retour d'une fonction, veuillez utiliser deux points (:) et le nom du type avant le nom de la fonction : 🎜rrreee🎜🎜Exemple pratique : 🎜🎜🎜Voici un exemple pratique d'utilisation des astuces de type : 🎜rrreee🎜In cet exemple, Person Le constructeur de la classe et la fonction createPerson ont tous deux des indications de type pour garantir que les paramètres qui leur sont transmis et les valeurs renvoyées ont les types corrects. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal