| #239 | if($total > 1000 && $total > $limit*$beishu){//最低倍数,如果太少,可能陷入死循环,导致网站崩溃 |
| #240 | $keys = array(); |
| #241 | $i = 0; |
| #242 | while ($i<$limit){ |
| #243 | $sql = "SELECT t1.id FROM {$table_full} AS t1 JOIN (SELECT ROUND(RAND() * (SELECT MAX(id) FROM {$table_full})) AS id) AS t2 WHERE t1.id >= t2.id LIMIT 1"; //这里不能是limit 多条,多条的话是连续的id |
| #244 | $arr = $run->db->fetch_first($sql); |
| #245 | if($arr && !in_array($arr['id'], $keys)){ |
| #246 | $keys[] = $arr['id']; |
| #247 | $i++; |
| #248 | } |