for
루프에서 우리는 어떻게해야하는지에 대해 들었습니다 :
for ($i = 0, $count = count($array); $i < $c; ++$i)
{
// Do stuff while traversing array
}
대신
for ($i = 0; $i < count($array); ++$i)
{
// Do stuff while traversing array
}
성능상의 이유로 (예 :
$count
초기화는
count()
를 한 번만 호출했을 것입니다. 조건부 검사마다
count()
를 호출하는 대신).
그러면 foreach
루프에서 다음과 같이 변경됩니다.
$array = do_something_that_returns_an_array();
foreach ($array as $key => $val)
{
// Do stuff while traversing array
}
대신
foreach (do_something_that_returns_an_array() as $key => $val)
{
// Do stuff while traversing array
}
상황에 따라 둘 중 하나를 사용할 수 있습니까? 즉, PHP는 두 경우 모두 한 번만 함수를 호출합니까? 아니면 for
처럼 두 번째 경우에서 함수를 계속 호출 할 것입니까?
테스트를 실행하십시오. 'do_something_that_returns_an_array()'함수가 내부적으로 어떤 것을 echo합니다. – Artelius