2012-11-14 7 views
0

foreach를 사용하여 배열 값을 출력 할 때 어떻게 5 단계 앞으로 나아갈 수 있습니까? foreach는 루프를 사용할 수없는 경우 풋 5foreach 단계 5 단계 앞으로 배열

$array = ("1","2","3","4","5","6","7","8","9"); 
foreach ($array as &$value) { 
    echo $value; //Where do I tell it to move 5 paces forward? 
    echo "<br/ >"; 
} 

, 1이됩니다이 너무, 나는 다른 것을 사용하고자 해요. "while"또는 "for"를 여기에서 사용할 수 있다고 생각하지 않습니까?

+0

2 가지 방법으로 인덱싱되지 않습니다. 카운터를 추가하고이를 인덱스로 사용하십시오. 각 반복 후에 +5를 추가하십시오. 또는 모듈 형 연산자를 사용하십시오. – itachi

+0

* 항상 앞으로 5 칸 앞으로 이동해야합니까? –

+0

앞으로 5 단계 이동하면 1,6 출력되지 않을까요? – FoolishSeth

답변

1
$array = array("1","2","3","4","5","6","7","8","9"); 
for($i=0; $i<count($array); $i+=5) { 
    echo $array[$i]; 
    echo "<br/ >"; 
} 
+0

이것은 작업을 수행했습니다 (값을 시작하고 1에서 시작하는 배열에 대한 몇 가지 수정 사항이 있음). 이것에 대해 고마워. – Norman

1

while 루프를 사용합니다. 루프 외부에서 인덱스를 설정하고 루프의 각 반복에서 인덱스를 5 추가하십시오. 색인이 목록 길이보다 클 경우 루프를 종료하십시오.

이 지침을 표현하는 더 컴팩트 방법은 for 루프입니다 :

for ($i=0; $i<count($array); $i = $i+5) 
0

이 수치

$count = -1; 
foreach ($array as &$value) { 
    $count++; 
    if ($count%4 != 0) continue; 
    echo "$value".PHP_EOL; 
} 
관련 문제