我试图在第6行之后插入新的预定义数据,同时从php中获取mysql的结果。之后,我想在每隔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;
}
这是我管理的代码,但它给了我" PREDEFINED DATA"每隔6行后。我想要的是在第5行之后应显示第6行消息。
答案 0 :(得分:2)
如果您希望关联数组value
的{{1}} key
['category']
被指定为$emparray
而非在第6,11,17位取得的结果predefined data
,依此类推,下面的代码将为您提供所需的结果。
$row['tag']
如果你想将$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++;
}
添加到第6,11,17位,并且将第6个结果predefined data
添加到第7位,你应该这样做此
$row['tag']
如果您希望在第6,11,17位添加$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++;
}
,另外添加到获取结果predefined data
的第6,11,17位值,你正在接近这个错误,因为你不能为一个键分配两个值,你需要使$row["tag"]
成为一个子阵列,即$emparray['category']
,或者在将它们分配给键之前将它们连接起来。
答案 1 :(得分:1)
请在循环前设置$i = 1
的值。如果条件允许$i % 5 == 0
。
$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;
}