这里的示例案例..如何使PHP函数根据百分比显示频率?
我想根据访问者点击率随机显示横幅。 例如,我想显示广告70%的访问者点击.. 问题是我们不知道有多少访问者。
,如果它能够更方便我们设置率在10%,20%,30%...... 100%
- ,也许还有可能,如果我们节约每100次点击计数器和复位
先谢谢了。
这里的示例案例..如何使PHP函数根据百分比显示频率?
我想根据访问者点击率随机显示横幅。 例如,我想显示广告70%的访问者点击.. 问题是我们不知道有多少访问者。
,如果它能够更方便我们设置率在10%,20%,30%...... 100%
先谢谢了。
你不需要知道有多少访问者。你唯一需要做的就是取1到100之间的随机数,如果它是70或更低,它在70%的范围内。
最终,这将奏效,并显示旗帜的人70%:
if (rand(1,100) <= 70) {
display_banner();
}
如果你想保留这个号码,并显示给用户的所有页面浏览量,然后存储它在某种类型的$ _SESSION变量中,并根据该值显示标题。
我相信
$percentageVisitors = ceil(($currentVisitors/$totalVisitors) * 100) ;
解决方案
if($percentageVisitors >= 70)
{
showRandomAdvert();
}
我希望这有助于
比
几乎完全是我的横幅做的一样好,随机抽样。
$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;
}
}
干杯
我想你想使用'<='在这里,而不是''==?否则它只会是1%:) – Nanne 2012-04-06 10:26:55
它只会显示到第70百分点...如果(兰特(1,100)<= 70)是正确的测试 – 2012-04-06 10:27:35
哈哈笨,我的错误 – 2012-04-06 10:28:28