我有一个分号分隔值的文件,如下所示:
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.我该怎么做呢?
您可以通过两种方式完成此操作:
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)
我会选择第一种方式,因为你的变量少得多,而且这种方式更清晰.