Maison  >  Article  >  développement back-end  >  Comment utiliser les fonctions PHP pour la validation des données ?

Comment utiliser les fonctions PHP pour la validation des données ?

PHPz
PHPzoriginal
2024-05-03 09:39:02703parcourir

PHP fournit des fonctions de validation des données pour vérifier les types de variables (par exemple is_int(), is_string()) et des fonctions de filtrage pour convertir et valider les données (par exemple filter_var(), filter_input()) pour garantir que l'entrée est conforme au format attendu et règles (par exemple FILTER_VALIDATE_EMAIL, FILTER_SANITIZE_STRING).

如何使用 PHP 函数进行数据验证?

Comment utiliser les fonctions PHP pour la validation des données

La validation des données est une étape importante pour garantir la validité et l'intégrité des données avant qu'elles ne soient traitées ou stockées. PHP fournit un large éventail de fonctions pour valider différents types de données, aidant ainsi les développeurs à appliquer les règles métier et à se protéger contre les entrées malveillantes.

Fonction de vérification de base

  • empty() :empty(): 检查变量是否为空。
  • isset(): 检查变量是否已设置。
  • is_array(): 检查变量是否为数组。
  • is_bool(): 检查变量是否为布尔值。
  • is_float(): 检查变量是否为浮点数。
  • is_int(): 检查变量是否为整型数。
  • is_numeric(): 检查变量是否为数字(整数或浮点数)。
  • is_string(): 检查变量是否为字符串。

过滤器函数

过滤器函数通过指定特定的规则和格式对数据进行转换和验证。常用函数包括:

  • filter_var(): 对变量应用指定的过滤器。
  • filter_input(): 从超级全局变量(例如 $_POST$_GET)中获取经过过滤的输入。
  • filter_input_array(): 一次性从超级全局变量中获取多个经过过滤的输入。

常用过滤器

  • FILTER_SANITIZE_EMAIL: 验证并清理电子邮件地址中的非法字符。
  • FILTER_SANITIZE_NUMBER_FLOAT: 验证并清理浮点数。
  • FILTER_SANITIZE_NUMBER_INT: 验证并清理整型数。
  • FILTER_SANITIZE_STRING: 验证并清理字符串中的非法字符。
  • FILTER_SANITIZE_URL: 验证并清理 URL 中的非法字符。
  • FILTER_VALIDATE_EMAIL: 验证电子邮件地址的有效性。
  • FILTER_VALIDATE_URL Vérifiez si la variable est vide.
isset() :

Vérifiez si la variable a été définie.

is_array() :

Vérifiez si la variable est un tableau.

is_bool() :🎜 Vérifiez si la variable est une valeur booléenne. 🎜🎜🎜is_float() :🎜 Vérifiez si la variable est un nombre à virgule flottante. 🎜🎜🎜is_int() :🎜 Vérifiez si la variable est un entier. 🎜🎜🎜is_numeric() :🎜 Vérifiez si la variable est un nombre (entier ou virgule flottante). 🎜🎜🎜is_string() :🎜 Vérifiez si la variable est une chaîne. 🎜🎜🎜Fonctions de filtrage🎜🎜Les fonctions de filtrage transforment et valident les données en spécifiant des règles et des formats spécifiques. Les fonctions couramment utilisées incluent : 🎜🎜🎜🎜filter_var() :🎜Appliquer un filtre spécifié à une variable. 🎜🎜🎜filter_input() :🎜 Obtenez une entrée filtrée à partir d'une variable super globale (telle que $_POST ou $_GET). 🎜🎜🎜filter_input_array() :🎜 Obtenez simultanément plusieurs entrées filtrées à partir de variables super globales. 🎜🎜🎜Filtres couramment utilisés🎜🎜🎜🎜FILTER_SANITIZE_EMAIL :🎜 Vérifiez et nettoyez les caractères illégaux dans les adresses e-mail. 🎜🎜🎜FILTER_SANITIZE_NUMBER_FLOAT :🎜 Validez et nettoyez les nombres à virgule flottante. 🎜🎜🎜FILTER_SANITIZE_NUMBER_INT :🎜 Valide et nettoie les entiers. 🎜🎜🎜FILTER_SANITIZE_STRING :🎜 Vérifiez et nettoyez les caractères illégaux dans les chaînes. 🎜🎜🎜FILTER_SANITIZE_URL :🎜 Vérifiez et nettoyez les caractères illégaux dans les URL. 🎜🎜🎜FILTER_VALIDATE_EMAIL :🎜 Vérifier la validité d'une adresse email. 🎜🎜🎜FILTER_VALIDATE_URL :🎜 Vérifiez la validité de l'URL. 🎜🎜🎜Cas pratique🎜🎜Supposons que nous ayons un formulaire qui demande à l'utilisateur de saisir son nom, son adresse e-mail et son numéro de téléphone. Nous pouvons utiliser des fonctions PHP pour valider ces entrées : 🎜
<?php
// 获取输入
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];

// 验证姓名
if (empty($name)) {
    echo "姓名不能为空";
}

// 验证电子邮件
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    echo "请输入有效的电子邮件地址";
}

// 验证电话号码
if (!preg_match("/^\d{3}-\d{3}-\d{4}$/", $phone)) {
    echo "请输入有效的电话号码格式";
}
🎜Conclusion🎜🎜Les fonctions PHP fournissent un moyen flexible et efficace de valider les données, augmentant ainsi la robustesse et la sécurité de l'application. En utilisant ces fonctions, les développeurs peuvent garantir que les données soumises par les utilisateurs sont au format attendu et sont conformes aux règles métier. 🎜

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