2

我目前正在通过将活动中的登录页面发送到以下脚本来拆分测试登录页面:

$link[] = "http://www.website.com/lp1";
$link[] = "http://www.website.com/lp2";

$random_number = rand(0,count($link)-1);
$redirectlink = $link[$random_number];

header("Location: $redirectlink");

如果我想在 75% 的时间里显示第一张 LP,我该怎么做呢?将第一个链接再复制两次是否可行,或者有更好的方法吗?

4

1 回答 1

2

也许有更好的方法,但这也有效

$link[0] = array('link' => 'http://example.com/1', 'percent' => 7);
$link[1] = array('link' => 'http://example.com/2', 'percent' => 20);
$link[2] = array('link' => 'http://example.com/3', 'percent' => 73);

$percent_arr = array();
foreach($link as $k => $_l) {
    $percent_arr = array_merge($percent_arr, array_fill(0, $_l['percent'], $k));
}

$random_key = $percent_arr[mt_rand(0,count($percent_arr)-1)];
$redirectlink = $link[$random_key]['link'];

header("Location: $redirectlink");
于 2012-03-29T22:04:57.280 回答