2013-05-01 2 views
-3

나는 일반적으로 수행PHP에서 할당과 루프

for ($i = 0; $i < count($array); $a = $array[$i]; $i ++) 
{ 
    //do something with $a 
} 
하십시오 for 루프 같은 것을 할 수있는 경우

foreach ($array as $a) 
{ 
    //do something with $a 
} 

난 그냥 알고 싶어요

편집 : 위 코드를 테스트 할 때 for 구문이 유효하지 않습니다.

+1

왜 똑같은 결과가 나올지보십시오. –

+1

왜? 루프 안에'$ a'를 할당 할 수 없습니까? – brbcoding

+1

@HunterMcMillen, obviouly 코드를 시도했지만 유효한 표현식이 아닙니다. – manix

답변

1

는 $ A = $ 배열에 대해 루프 (이 루프의 선언에 루프가 아니라 내부의 지정된 경우)

사항이 아닌 것처럼해야의 [$ i]를 일부 생략 :

for ($i = 0; $i < count($array); $i ++) 
{ 
    $a = $array[$i]; //Gets value of element in array $array 
    //Do something with it... 
} 

배열 요소를 제어하려고한다고합니다. 당신은 (foreach는 루프에 키 - 값을 추가)과 같이 수행하여 대한 equalivalent을 할 수있는 루프 정의에 대한

foreach ($array as $key=>$i) 
{ 
    $a = $i[$key]; 
} 
+0

foreach 형식은 매우 다양합니다. 좋은! – manix

1

세 번째 세미콜론을 쉼표로 바꾸십시오. 그것은 전체 솔루션이 아닙니다 (할당이 너무 늦었습니다), for 문이 작동하는 방법을 충분히 설명해야합니다.

+0

이제이 주제가 더 명확합니다. 'for 루프'처럼 보입니다. 선언에서 부울 조건 만 받아들입니다. – manix

+0

@manix - 어떻게 의미합니까? – bestprogrammerintheworld

+0

좋아, 예를 들어, for 루프는이 개념을 기반으로한다고 생각한다 : for (| inaticization | | condition | | counter |). (예 : $ i = 0; $ i manix

0
for ($i = 0; $i < count($array); $i ++){ 
    $a = $array[$i]; 
} 

는 네 제공 세 개의 문을합니다. $ a의 할당을 실제 루프로 이동하십시오.

1

for 루프는 $a = $array[$i];을 인수의 일부로 처리 할 필요가 없습니다. 다음과 같이 루프의 본문으로 옮길 수 있습니다. for ($i = 0; $i < count($array); $i++){
$a = $array[$i]; //do something with $a }

관련 문제