PHP:两次使用explode()时,如何自动增加

时间:2013-08-14 19:59:39

标签: php mysql

我正在尝试一些东西,但我需要将它爆炸两次,因为我在字符串中存储了2个变量。无论如何,我使用了一个while循环,但我不明白,我使用cid ++,但它似乎没有增加。不管怎样,这是代码。

              $cid = 0;
              while($row = mysql_fetch_array($result)){
                $comment = explode("-", $row['comments']);
                $madeby = explode("///", $comment[$cid]);
                $cid++;
                echo $madeby[1];
              }

3 个答案:

答案 0 :(得分:2)

由于您正在设置var并递增,因此可以将其用作两个数组的键。

$cid = 0;
while($row = mysql_fetch_array($result)){
   $comment[$cid] = explode("-", $row['comments']);
   $madeby[$cid] = explode("///", $comment[$cid]);
   echo $madeby[$cid][1];
   $cid++;
}

然后你可以这样做:

foreach($madeby as $key=>$tempArr){
   echo '"'.$madeby[$key][0].'" by "'.$madeby[$key][1].'"<br>'; 
}

要查看整个数组:

print_r($madeby);

答案 1 :(得分:0)

试试这个:

while($row = mysql_fetch_array($result)){

    $comment = explode("-", $row['comments']);
    $cnt = count($comment);

    $madeby = array();
    for($cid=0; $cid<$cnt; $cid++){
        $madeby[] = explode("///", $comment[$cid]);
    }    
    print_r($madeby);
}

答案 2 :(得分:0)

试试这个

while($row = mysql_fetch_array($result))
{
 $comment = explode("-", $row['comments']);
 foreach($comment as $each_comment)
 {
  $madeby = explode("///", $each_comment);
  echo $madeby[1];
 }
}

或者如果你真的想使用cid那么

while($row = mysql_fetch_array($result))
    {
     $comment = explode("-", $row['comments']);
     for($cid=0;$cid<count($comment);$cid++)
     {
      $madeby = explode("///", $comment[$cid]);
      echo $madeby[1];
     }
    }