PHP中用于迭代数组的For循环在第一个循环上工作,但在第二个循环上不工作

PHP中用于迭代数组的For循环在第一个循环上工作,但在第二个循环上不工作,php,for-loop,Php,For Loop,如果(isset($\u GET['q'])){ $q=$_GET['q'] //variables $sql = "SELECT * FROM products WHERE product LIKE '%$q%' OR search LIKE '%$q%'"; $result = $conn->query($sql); //check database

如果(isset($\u GET['q'])){ $q=$_GET['q']

              //variables
              $sql = "SELECT * FROM products WHERE product LIKE '%$q%' OR search LIKE '%$q%'";
              $result = $conn->query($sql);


              //check database
              if($result->num_rows > 0){        
                while ($row = $result->fetch_array()){
                  $product = $row['product'];
                  $productImage = $row['product_image'];
                  $price = $row['price'];
                  $seller = $row['seller_name'];
                  $sellerImage = $row['seller_image'];
                  $desc = $row['description'];
                  $search = $row['search'];
                  $console = $row['console'];

                  $array = array($product, $price, $productImage);
                  $arrayDesc = array($desc, $sellerImage);



                  if (preg_match('/Game/', $seller)){                    
                    for ($num = 0; $num < 3; $num++) {
                      echo '<div class="tile col-md-4 col-sm-3">';
                      if($num == 0){
                        echo '<div class="tileTitleBox"><h4>' . $array[$num] . '</h4></div>';
                      }
                      if($num = 1){
                        echo '<p class="price">' . $array[$num] . '</p>';
                      }
                      if($num = 2){
                        echo '<img class="tilePic" src="' . $array[$num] . '"/>';
                      }
                      // if($num = 3){
                      //   echo '<div class = "desc"><p>' . $array[$num] . '</p></div>';
                      // }
                      echo '</div>';
                    }//For Iteration Loop - TILE

                    for($count = 0; $count < 2; $count++){
                      echo '<div class="tile-description col-md-4 col-sm-3 hidden">';
                      if($count == 0){
                        echo '<div class="desc"><p>' . $arrayDesc[$count] . '</p></div>';
                      }
                      if($count == 1){
                        echo '<img class="sellerImg" src="' . $arrayDesc[$count] . '"/>';
                      }

                      echo '</div>';
                    }//end for loop - TILE-DESCRIPTION
//变量
$sql=“从产品中选择*,其中产品为“%$q%”或搜索为“%$q%”;
$result=$conn->query($sql);
//检查数据库
如果($result->num_rows>0){
而($row=$result->fetch_array()){
$product=$row['product'];
$productImage=$row['product_image'];
$price=$row['price'];
$seller=$row['seller_name'];
$sellerImage=$row['seller_image'];
$desc=$row['description'];
$search=$row['search'];
$console=$row['console'];
$array=array($product,$price,$productImage);
$arrayDesc=数组($desc,$sellerImage);
如果(preg_match('/Game/',$seller)){
对于($num=0;$num<3;$num++){
回声';
如果($num==0){
回显'.$array[$num].';
}
如果($num=1){
echo'

。$array[$num].

'; } 如果($num=2){ 回声'; } //如果($num=3){ //回显“”.$array[$num]。

”; // } 回声'; }//对于迭代循环-平铺 对于($count=0;$count<2;$count++){ 回声'; 如果($count==0){ 回显“”.$arrayDesc[$count]。

”; } 如果($count==1){ 回声'; } 回声'; }//循环结束-平铺描述
正如您在上面看到的,我有一个for循环,它创建“tile”,第二个应该创建“tile description”。第一个可以很好地使用“tile”类创建一个div,其中剩余的内容加载到div中。但是在第二个for循环中,“desc”dev和“sellerImg”div是分开的。循环需要多次通过数组

如下所示:
@sam dufel正确地指出您正在覆盖迭代器

if($num = 1){
但事实上,这里不应该使用任何循环:

  echo '<div class="tile col-md-4 col-sm-3">';
  echo '<div class="tileTitleBox"><h4>' . $array[0] . '</h4></div>';
  echo '<p class="price">' . $array[1] . '</p>';
  echo '<img class="tilePic" src="' . $array[2] . '"/>';
  echo '</div>';

  echo '<div class="tile-description col-md-4 col-sm-3 hidden">';   
  echo '<div class="desc"><p>' . $arrayDesc[0] . '</p></div>';
  echo '<img class="sellerImg" src="' . $arrayDesc[1] . '"/>';
  echo '</div>';
echo';
回显'.$array[0].';
echo'

。$array[1].

; 回声'; 回声'; 回声'; 回显“”.$arrayDesc[0]。

”; 回声'; 回声';
您根本不需要循环。仅供参考:
$num=1
是一个赋值,而不是一个比较。遍历数组的最佳方式是什么?我需要数组遍历不同的时间。不仅仅是一次迭代。问题是,我需要遍历数组不同的时间。@CarlosHernandez可能,但不需要遍历任何数组你已经在你的例子中展示了。这个数组需要多次迭代。这是如何实现的?在你更新的例子中,你在每一个循环中都创建了这些数组。正确的答案是:不要把员工放在新的数组中,而只是显示$row中的内容。