我有foreach循环的转储问题... 我想在foreach中显示所有数据,例如:
s
我使用这个脚本并且工作
byte b1, b2, b3, b4;
for (byte octet : bytes) {
if (i==1) {
//Gauche
b1=octet;
//System.out.println(i+" *** "+bit);
i++;
} else if (i==2) {
b2=octet;
//Gauche
if (Math.abs((b2<<8)+b1)> signalLevelLeft) {
signalLevelLeft=Math.abs((b2<<8)+b1);
//c2=Math.abs((b2<<8)+b1);
//System.out.println("Gauche : "+c2);
}
i++;
} else if (i==3) {
//Droite
b3=octet;
//System.out.println(i+" *** "+bit);
i++;
} else if (i==4) {
//Droite
b4=octet;
if (Math.abs((b4<<8)+b3)>signalLevelRight) {
signalLevelRight=Math.abs((b4<<8)+b3);
//c4=Math.abs((b4<<8)+b3);
//System.out.println("Droite : "+c4);
}
i=1;
}
}
这没关系,没问题。 但是当我想在下一个脚本中包含$ mydata时(为了保存在txt中),他只显示了最后一个单词 World
为什么呢?如何包含变量
中的所有数据答案 0 :(得分:1)
每次你覆盖变量$mydata
并且你打印那个每次都替换它时,你可以将它存储到数组中并在循环结束后转储该变量,
for($i=1; $i<3; $i++){
$mydata[] = $data[$i];
echo $data[$i];
}
echo '<pre>';
print_r($mydata)
# You can directly dump the all the variable as follow
echo implode('\n', $mydate)
# or
echo implode('\n', data)
答案 1 :(得分:0)
试试这个:
$mydata = '';
for($i=1; $i<3; $i++){
$mydata .= $data[$i];
}
echo $mydata;
答案 2 :(得分:0)
你在for循环中只有echo
ed $mydata
,因此当你更改/覆盖 $mydata
时,它会打印上次出现值的值变量值。
像这样使用:
$mydata = '';//Storing $mydata variable
for($i=1; $i<3; $i++){
$mydata .= $data[$i]; //adding up the values to $mydata
}
var_dump($mydata); //dumps all the $data value.