如何在 php 中的 mysql 获取结果之间插入数据?

How to insert data between mysql fetched result in php?

我试图在第 6 行之后插入新的预定义数据,同时从 mysql 中获取结果 php。在那之后,我想在每 5 行之后插入一个预定义的文本。

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

if((($i%6)== 0)&&($i!=0))
{

$emparray['category'] = "PREDEFINED DATA";
array_push($json_response,$emparray);

}

//Data from the database
$emparray['category'] = ucwords($row["tag"]);
array_push($json_response,$emparray);
++$i;
}

这是我管理的代码,但它在每 6 行后给我 "PREDEFINED DATA"。我想要的是在第 6 行消息之后应该在每 5 行之后显示。

请在循环前设置$i = 1的值。并且 $i % 5 == 0 在 if 条件下。

$i = 1;
while($row=mysql_fetch_array($result))
{

if((($i%5)== 0)&&($i!=0))
{

$emparray['category'] = "PREDEFINED DATA";
array_push($json_response,$emparray);

}

//Data from the database
$emparray['category'] = ucwords($row["tag"]);
array_push($json_response,$emparray);
++$i;
}

如果要将关联数组 $emparraykey ['category']value 赋值为 predefined data [= =34=] 获取的结果 $row['tag'] 在第 6、11、17 位等等,下面的代码会给你想要的结果。

$i=1;
while($row=mysql_fetch_array($result)){
   if(($i%6)==0){
     $emparray['category'] = "PREDEFINED DATA";
   }
   else{
//Data from the database
     $emparray['category'] = ucwords($row["tag"]);
   }
   array_push($json_response,$emparray);
   $i++;
}

如果想把predefined data加到第6、11、17位,把第6个取到的结果$row['tag']到第7位,你应该这样做。

$i=1;
while($row=mysql_fetch_array($result)){
   if(($i%6)==0){
     $emparray['category'] = "PREDEFINED DATA";
     array_push($json_response,$emparray);
     $i++;
   }
//Data from the database
     $emparray['category'] = ucwords($row["tag"]);
     array_push($json_response,$emparray);
     $i++;
}

如果要在第6、11、17位添加predefined data在取到结果的第6、11、17位的值之外 =21=],你正在错误地处理这个问题,因为你不能为一个键分配两个值,你需要使 $emparray['category'] 成为一个子数组,即 $emparray['category'][] 或者在将它分配给键。