What steps can be taken to improve the structure and organization of PHP code for form processing and validation?

When processing forms in PHP, it is important to have a well-structured and organized code to handle form validation effectively. One way to improve the structure is to separate the form processing logic from the validation logic. This can be achieved by creating separate functions for form validation and form processing, making the code more readable and maintainable.

<?php

// Function to validate form data
function validateForm($formData) {
    // Add your validation rules here
    if (empty($formData['name'])) {
        return "Name is required";
    }
    if (empty($formData['email']) || !filter_var($formData['email'], FILTER_VALIDATE_EMAIL)) {
        return "Valid email is required";
    }
    // Add more validation rules as needed
    return true;
}

// Function to process form data
function processForm($formData) {
    // Process the form data here
    // For example, save data to database or send an email
    echo "Form data processed successfully!";
}

// Handle form submission
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $formData = $_POST;
    
    // Validate form data
    $validationResult = validateForm($formData);
    
    if ($validationResult === true) {
        // If validation passes, process the form
        processForm($formData);
    } else {
        // If validation fails, display error message
        echo $validationResult;
    }
}

?>