Maison >développement back-end >tutoriel php >Astuces de saisie et conversion de type automatique pour les fonctions PHP

Astuces de saisie et conversion de type automatique pour les fonctions PHP

WBOY
WBOYoriginal
2024-04-27 09:24:021234parcourir

Les indices de type PHP déclarent les paramètres attendus et renvoient des types de fonctions pour éviter les erreurs de type. Il fournit également une conversion de type automatique, générant une erreur de type lorsque la conversion échoue. Ces fonctionnalités améliorent la lisibilité du code, réduisent les erreurs et améliorent la détection des erreurs du compilateur, comme le montre l'exemple de validation d'un numéro de carte de crédit.

PHP 函数的类型提示和自动类型转换

Astuces de type et conversion automatique de type pour les fonctions PHP

Astuces de type

PHP 7 introduit des astuces de type, permettant aux développeurs de déclarer les types de paramètres et de renvoyer les types attendus par les fonctions. Cela permet d'éviter les erreurs de type et d'améliorer la lisibilité du code. Par exemple :

function sum(int $a, int $b): int
{
    return $a + $b;
}

Le code ci-dessus déclare que la fonction sum() reçoit deux paramètres entiers et renvoie une valeur entière.

Conversion automatique de type

PHP essaiera généralement de convertir automatiquement les variables au type attendu par la fonction. Si la conversion échoue, une erreur de type est générée. Par exemple :

sum(1, '2'); // 自动将 '2' 转换为整型 2
sum('1', 2); // 抛出类型错误,因为 '1' 不能转换为整型

Exemple pratique

Ce qui suit est une fonction qui vérifie si un numéro de carte de crédit est valide :

function isValidCreditCard(string $cardNumber): bool
{
    // 验证卡号是否是 16 位数字
    if (!preg_match('/^\d{16}$/', $cardNumber)) {
        return false;
    }

    // 使用 Luhn 算法验证卡号
    $sum = 0;
    for ($i = 0; $i < strlen($cardNumber); $i++) {
        $digit = (int) $cardNumber[$i];
        if ($i % 2 === 0) {
            $digit *= 2;
        }
        $sum += $digit % 10 + ($digit / 10);
    }

    return $sum % 10 === 0;
}

Avantages

Les conseils de saisie et la conversion automatique de type offrent les avantages suivants :

  • Réduit erreurs de type
  • Lisibilité et maintenabilité améliorées du code
  • Améliore la capacité du compilateur à détecter les erreurs

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!

Déclaration:
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