php foreach循环显示所有数据

时间:2016-08-04 10:01:41

标签: php foreach

我有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

为什么呢?如何包含变量

中的所有数据

3 个答案:

答案 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.