What are the best practices for implementing an IP block feature in a PHP visitor counter script?

To implement an IP block feature in a PHP visitor counter script, you can keep track of the number of visits from each IP address and block those that exceed a certain threshold. This can help prevent abuse or spamming of your visitor counter.

// Initialize session to store IP visit count
session_start();

// Define maximum number of visits allowed per IP
$maxVisits = 10;

// Get visitor's IP address
$ip = $_SERVER['REMOTE_ADDR'];

// Check if IP address is blocked
if(isset($_SESSION['ip_count'][$ip]) && $_SESSION['ip_count'][$ip] >= $maxVisits){
    // Block IP address
    echo "Your IP address has been blocked.";
    exit;
}

// Increment visit count for IP address
if(isset($_SESSION['ip_count'][$ip])){
    $_SESSION['ip_count'][$ip]++;
} else {
    $_SESSION['ip_count'][$ip] = 1;
}

// Display visitor counter
echo "Total visits: " . $_SESSION['total_visits'];