How can PHP functions be utilized to regulate the display frequency of banners in a rotation script?

To regulate the display frequency of banners in a rotation script, you can use PHP functions to keep track of the number of times each banner has been displayed. By incrementing a counter for each banner display and comparing it against a predefined limit, you can control how often each banner is shown.

// Define an array of banners with their display frequencies
$banners = [
    ['image' => 'banner1.jpg', 'displayed' => 0, 'limit' => 5],
    ['image' => 'banner2.jpg', 'displayed' => 0, 'limit' => 3],
    ['image' => 'banner3.jpg', 'displayed' => 0, 'limit' => 2]
];

// Function to get the next banner to display based on frequency
function getNextBanner($banners) {
    foreach($banners as $banner) {
        if($banner['displayed'] < $banner['limit']) {
            $banner['displayed']++;
            return $banner['image'];
        }
    }
    return false; // All banners have reached their display limit
}

// Display the next banner
$nextBanner = getNextBanner($banners);
if($nextBanner) {
    echo '<img src="' . $nextBanner . '" />';
} else {
    echo 'No more banners to display.';
}