数据库行中的Echo 1数字,其他数字用逗号分隔

时间:2014-07-11 04:01:51

标签: php mysql

有一行称为“广告”,其中包含用逗号分隔的用户提交的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

2 个答案:

答案 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