2012-09-09 3 views
1

정상적인 방법과 반대 방향으로 foreach 루프를 반복하는 방법이 있습니까? 예를 들어 $ _FILES 변수 ($ _FILES [ 'file'], $ _FILES [ 'file2'], $ _FILES [ '3'] 등)에 알 수없는 양의 파일이 있습니다. 이 코드의 사용PHP foreach - 대칭 순서로 배열을 반복합니다

foreach($_FILES as $i) 

$는 file3, file2, file로 출력합니다. 파일 file2, file3을 출력해야합니다.

답변

3

가 여기에 또 다른 방법 for을 사용하지 않고 :

$i = count($_FILES); 
while ($i-->0) 
    // Do stuff 

나는 그것이 약간 더 예쁜 이제까지 생각합니다.

몇 년 후, 나는 이것을 되돌아보고 찡그린다.

+0

아마도 약간의 공백을 추가하고 선행 감소를 한 경우 일 수도 있습니다. –

+2

아니요 아니요,이 방법이 더 좋을 것 같습니다. 그것은 작동하고, 그것은 화살처럼 보입니다. 그것만으로도 더 나아질 수 있습니다. 그것은 힙 스터 루프의 일종입니다. 그것은 약간 애매합니다. 당신은 아마 그것을 들어 보지 못했을 것입니다. 그것은 루프를위한 다른 주류보다 훨씬 시적입니다. –

+3

당신은 완전히 옳습니다. 나는 미래의 개발자들에게 읽기 어려운 모호한 코드를 쓰는 것에 대해 들어 보지 못했다. 매우 고관절 남자! –

6

array_reverse 트릭을 수행해야합니다

foreach(array_reverse($_FILES) as $i) 
+1

+1 처음에는'array_reverse()'를 언급합니다. –

+0

이것은 대단합니다. 정말 고맙습니다. – foxtangocharlie

3
foreach(array_reverse($_FILES) as $i) 
관련 문제