有一行称为“广告”,其中包含用逗号分隔的用户提交的ID,例如“24,56,67”。 我想回显那一行中的一个随机数,例如56。 我该怎么做呢? 我已经从页面上获得了所有数字。但是,rand()似乎不起作用,它不是分离的,它按原样回应所有数字“24,56,67”。没有分开。不是随意的。 ?
到目前为止我所拥有的:
$rotation_id = $_GET["ari"];
$find_ad = mysql_query ("SELECT * FROM `rotations` WHERE id='$rotation_id' ORDER BY rand()");
while ($row = mysql_fetch_assoc($find_ad)) {
$id = $row['id'];
$name = $row['name'];
$ads = $row['ads'];
$user = $row['user'];
$date = $row['date'];
}
$advert = str_replace(',', ', ', rand($ads));
$limit = 0;
$ad = array($advert);
echo $ad;
您可以自行测试以查看广告流程和轮换部分(http://www.fordberg.com/adsol)
答案 0 :(得分:1)
我已经从页面上获得了所有数字。
然后你可以做
$string="24,56,67"; // Your numbers
$numbers=explode(",",$string); // Create an array of them
echo $numbers[rand(0,count($numbers)-1)]; // Display one random number from that array
答案 1 :(得分:0)
<?php
$rowIds = "24,66,25"; //Assuming You got rows containing all ids.
$idArray= explode(",", $rowIds); //Explode each id into an array.
echo $idArray[array_rand($idArray)]; //Getting random id out of an array.
?>
请参阅array_rand的Php手册: - http://php.net/manual/en/function.array-rand.php