如何以相反的顺序遍历我的数组?

时间:2015-06-03 19:29:01

标签: php arrays

我有一个分号分隔值的文件,如下所示:

1;data
2;data
3;data
...
Z;data

每个文件的行数Z可以更改。我们的想法是解析数据并将其放入数据库中。所以我做了以下几点:

$contents = file_get_contents($filename);
$line = explode(chr(13),$contents);

现在我按照以下方式逐行检查,事情还可以。

$n = 0;
while ($line[$n] != "") {
    //lots of magic stuff that works
    $n = $n + 1;
}

现在由于没有必要解释的原因,我需要首先解析Z行然后再解析为1。我该怎么做呢?

2 个答案:

答案 0 :(得分:5)

您可以通过两种方式完成此操作:

1。只需反转您的阵列,例如

WaitCommEvent

然后你可以循环完成如下:

$array = array_reverse($array);

2。计算数组的元素

首先计算数组的元素,然后循环直到索引0。

foreach($array as $v) {
    //Your magic stuff with $v
}

我会选择第一种方式,因为你的变量少得多,而且这种方式更清晰。

答案 1 :(得分:0)

如果我理解正确,你想在while循环期间从数组中的最后一个单元格转到第一个单元格。所以,你可以去:

$n = (count($line) - 1);

while ($line[$n]!="") {
 lots of magic stuff that works
$n=$n-1;
}