
Problème :
Développement d'une bibliothèque PHP simple pour une validation de formulaire efficace, où les règles et les noms de champs peuvent être facilement transmis et les erreurs récupérées.
Réponse :
Une approche consiste à implémenter votre propre classe de validation en utilisant la fonction filter_var intégrée de PHP et la fonction régulière personnalisée expressions. Voici un exemple :
<code class="php">class FormValidator
{
public static $regexes = [
// Define various validation patterns
'date' => '/^[0-9]{4}[-/][0-9]{1,2}[-/][0-9]{1,2}$/',
'amount' => '/^[0-9]+$/',
// ...
];
private $validations, $sanatations, $mandatories, $errors, $corrects, $fields;
public function __construct($validations = [], $mandatories = [], $sanatations = [])
{
// Initialize class properties
}
public function validate($items)
{
// Perform validation on array items and return validation result
}
// ...
}</code>Utilisation :
<code class="php">$validations = ['name' => 'anything', 'email' => 'email', ...];
$required = ['name', 'email', ...];
$sanatize = ['alias'];
$validator = new FormValidator($validations, $required, $sanatize);
if ($validator->validate($_POST)) {
$_POST = $validator->sanatize($_POST);
// Process form submission
} else {
// Handle validation errors
}</code>Cela offre une flexibilité dans la spécification des règles de validation et la récupération des erreurs par rapport à l'utilisation de frameworks existants.
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!
La différence entre les fonctions fléchées et les fonctions ordinaires
Introduction aux types d'interfaces de disque dur
Comment se connecter pour accéder à la base de données en VB
Icône Ali
Que sont les technologies d'intelligence artificielle ?
Pourquoi le stockage local échoue-t-il si rapidement ?
Structure de données en langage C
Comment utiliser le curseur MySQL