一個簡單的隨機廣告插入代碼,含廣告重複判斷
<?php
header("Content-type:text/html;Charset=utf8");
//定義廣告數組
$ad[1] = '廣告1';
$ad[2] = '廣告2';
$ad[3] = '廣告3';
$ad[4] = '廣告4';
$ad[5] = '廣告5';
$ad[6] = '廣告6';
$ad[7] = '廣告7';
$ad[8] = '廣告8';
$ad[9] = '廣告9';
$ad[10] = '廣告10';
$ad[11] = '廣告11';
$ad[12] = '廣告12';
$numInsert = 1000; //定義每1000字插入一次
//測試的章節內容
$str = "這裏有5000字";
$textLength = mb_strlen($str);
$index = ceil($textLength / $numInsert);
$adLen = count($ad);
$adHas = [];
$newStr = '';
for ($i = 0; $i < $index; $i++) {
$offset = $i * $numInsert;
$randNum = rand(1, $adLen);
while (true) {
if (in_array($randNum, $adHas)) {
$randNum = rand(1, $adLen);
} else {
break;
}
}
$adHas[] = $randNum;
$newStr .= mb_substr($str, $offset, $numInsert) . '<br />-----' . $ad[$randNum] . '-----<br />';
}
echo $newStr;