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

Geo*_*off 1 php arrays

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

1;data
2;data
3;data
...
Z;data
Run Code Online (Sandbox Code Playgroud)

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

$contents = file_get_contents($filename);
$line = explode(chr(13),$contents);
Run Code Online (Sandbox Code Playgroud)

现在我按行顺序排列如下,事情还可以:

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

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

Riz*_*123 5

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

1.简单地反转你的阵列,例如

$array = array_reverse($array);
Run Code Online (Sandbox Code Playgroud)

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

foreach($array as $v) {
    //Your magic stuff with $v
}
Run Code Online (Sandbox Code Playgroud)

2.计算数组的元素

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

$count = count($array)-1;

while($count >= 0) {
    //Your magic stuff with $array[$count]
    $count--;
}
Run Code Online (Sandbox Code Playgroud)

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