[PHP] freach 문에 대한 간단한 분석좀 부탁드립니다.

<?php
function print_fr($arr_var1,$arr_var2)
{
$arr_var3 = array(
array(0,0,0),
array(0,0,0),
array(0,0,0)
);
for($i=0;$i<3;$i++)
{
for($j=0;$j<3;$j++)
{
for($k=0;$k<3;$k++)
{
$expt = $arr_var1[$i][$k] * $arr_var2[$k][$j];
$arr_var3[$i][$j] += $expt;
}
}
}
foreach($arr_var3 as $value)
{
foreach($value as $value4)
{
print $value4." ";
}
print "
";
}
/*
for($i=0;$i<3;$i++)
{
for($j=0;$j<3;$j++)
{
print $arr_var3[$i][$j];
print " ";
}
print "
";
}
*/
}
$result1 = array(
array(1,2,3),
array(3,2,1),
array(1,2,3)
);
$result2 = array(
array(1,2,3),
array(4,5,6),
array(7,8,9)
);
print_fr($result1,$result2);
?>
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
위의 3x3 행열 소스코드를 실행시키면 위의 답안은
30 36 42
18 24 30
30 36 42
이렇게 나옵니다.
아랫쪽에서의 for문으로 출력을 했을경우에는 이해가 가서 주석처리를 하였지만
foreach 로 출력을 하는건 어떻게 겨우겨우 어거지로 출력은 했지만 어떻게 이렇게
구성이 되는지는 도무지 전혀 감이 오질 않습니다.
foreach($arr_var3 as $value)
{
foreach($value as $value4)
{
print $value4." ";
}
print "
";
}
이 부분에 대한 자세한 해석좀 부탁드립니다.
또 어떠한 경우에는 foreach문 안에 => 를 써서 해결하는 경우도 있던데..
하아 .. 너무 어렵습니다
도와주세요 !!
하나씩 출력해보면.
vector 에 vector 넣은거를 확인하는것과 비슷합니다.
//배열리스트를 넣으면. 배열이 나오고
foreach(배열리스트 as 배열)
{
}
//배열을 넣으면. 변수가 나오고
foreach(배열 as 변수)
{
}
http://blog.naver.com/diceworld?Redirect=Log&logNo=220199407985
----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.
각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com
댓글 달기