Home  >  Article  >  Backend Development  >  How to verify the validity of PHP function parameters?

How to verify the validity of PHP function parameters?

王林
王林Original
2024-04-11 11:12:02710browse

Methods to verify the validity of function parameters in PHP include: 1. Data type check; 2. Range check; 3. Regular expression; 4. Assertion. By validating parameter types, ranges, and formats, you can ensure the robustness and reliability of your code.

如何验证 PHP 函数参数的有效性?

How to verify the validity of PHP function parameters

In PHP, the validity verification of function parameters is crucial , as it helps ensure the robustness and reliability of your code. Parameter verification can be achieved through a variety of methods, and this article will explore the most common methods.

Using data type checking

By using the data type checking operator in PHP, you can verify that the parameters are of the expected type. For example:

function addNums(int $num1, int $num2): int
{
    return $num1 + $num2;
}

The above function accepts two integer parameters and returns an integer. If a non-integer value is passed, a TypeError will be raised.

Using range checking

You can use the range() function to verify whether the parameters are within the specified range. For example:

function checkAge(int $age): string
{
    if (in_array($age, range(18, 65))) {
        return "Eligible";
    } else {
        return "Not Eligible";
    }
}

This function checks whether the age passed in is between 18 and 65, and returns the appropriate message based on the result.

Using Regular Expressions

Regular expressions are a powerful tool that can be used to validate patterns of string parameters. For example:

function validateEmail(string $email): bool
{
    return preg_match("/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/", $email);
}

This function uses regular expressions to verify that the incoming email string is properly formatted.

Using assertions

Assertion is a syntax construct that takes a Boolean expression as a parameter. Throws an error when the condition is false. For example:

function divideNums(int $num1, int $num2): float
{
    assert($num2 !== 0);

    return $num1 / $num2;
}

This function uses the assert() assertion to ensure that the second parameter is not zero, avoiding divide-by-zero errors.

Practical Case

Suppose we have a function that calculates the perimeter and area of ​​a triangle. We can validate the parameters passed in to make sure they are valid.

function calculateTriangle(float $base, float $height): array
{
    // 验证参数类型
    if (!is_float($base) || !is_float($height)) {
        throw new InvalidArgumentException("Invalid parameter types.");
    }

    // 验证参数范围
    if ($base <= 0 || $height <= 0) {
        throw new InvalidArgumentException("Invalid parameter values.");
    }

    // 计算结果
    $perimeter = 2 * $base + 2 * $height;
    $area = 0.5 * $base * $height;

    return ["perimeter" => $perimeter, "area" => $area];
}

In this example, we use data type checking and range checking to verify function parameters. If the argument is invalid, an exception will be thrown and execution of the script will be aborted.

The above is the detailed content of How to verify the validity of PHP function parameters?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn