2012-04-06 80 views
0

這裏的示例案例..如何使PHP函數根據百分比顯示頻率?

我想根據訪問者點擊率隨機顯示橫幅。 例如,我想顯示廣告70%的訪問者點擊.. 問題是我們不知道有多少訪問者。

,如果它能夠更方便我們設置率在10%,20%,30%...... 100%

  • ,也許還有可能​​,如果我們節約每100次點擊計數器和復位

先謝謝了。

回答

1

你不需要知道有多少訪問者。你唯一需要做的就是取1到100之間的隨機數,如果它是70或更低,它在70%的範圍內。

最終,這將奏效,並顯示旗幟的人70%:

if (rand(1,100) <= 70) { 
    display_banner(); 
} 

如果你想保留這個號碼,並顯示給用戶的所有頁面瀏覽量,然後存儲它在某種類型的$ _SESSION變量中,並根據該值顯示標題。

+0

我想你想使用'<='在這裏,而不是''==?否則它只會是1%:) – Nanne 2012-04-06 10:26:55

+0

它只會顯示到第70百分點...如果(蘭特(1,100)<= 70)是正確的測試 – 2012-04-06 10:27:35

+0

哈哈笨,我的錯誤 – 2012-04-06 10:28:28

0

我相信

$percentageVisitors = ceil(($currentVisitors/$totalVisitors) * 100) ; 

解決方案

if($percentageVisitors >= 70) 
{ 
    showRandomAdvert(); 
} 

我希望這有助於

2

幾乎完全是我的橫幅做的一樣好,隨機抽樣。

$freq_banners = array(
    5 => 'banner_3', 
    10 => 'banner_1', 
    85 => 'banner_2', 
); 
$use_banner = null; 
$sum = 0; 
$key = rand(1,100); 
foreach ($freq_banners as $banner_freq => $banner) { 
    $sum += $banner_freq; 
    if ($key <= $sum) { 
     $use_banner = $banner; 
     break; 
    } 
} 

乾杯