PHP의 break 문
다음과 같이 배열 요소를 출력하는 루프가 있다고 가정해 보겠습니다:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
echo $elem;
}
?>
배열에 숫자 3이 있는지 확인하는
과제가 있다고 합시다. 만약 있다면
화면에 '+++'를 출력하고
(없다면 아무것도 하지 않습니다).
과제를 해결해 봅시다:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
if ($elem == 3) {
echo '+++';
}
}
?>
문제는 해결되었지만, 한 가지 문제가 있습니다:
숫자 3을 찾은 후에도 배열은
의미 없이 계속해서 순회되며, 이는 귀중한 CPU 자원을 낭비하고
스크립트 실행 속도를 늦춥니다.
숫자를 찾는 즉시 루프 작업을 종료하는 것이
더 효율적일 것입니다. 이는 루프 작업을
조기에 종료할 수 있는 특별한 지시문
break를 사용하여 수행할 수 있습니다.
자, 숫자 3을 만나면
즉시 루프를 종료해 봅시다:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
if ($elem == 3) {
echo '+++';
break; // 루프를 빠져나옵니다
}
}
?>
break 문은 모든 루프를 종료할 수 있습니다:
foreach, for, while.
숫자 배열이 주어졌습니다. 이 배열의 요소를
하나씩 콘솔에 출력하는 루프를 실행하되,
값이 0인 요소를 만나면
루프 작업을 중단하세요.
숫자 배열이 주어졌습니다. 배열의 처음부터 첫 번째 음수까지의 요소 합계를 구하세요.
숫자 배열이 주어졌습니다. 이 배열에서 첫 번째
숫자 3의 위치를 찾으세요
(이 숫자는 반드시 배열에 있다고 가정합니다).
숫자 1부터 시작하여
합계가 100을 초과하려면
몇 개의 정수를 더해야 하는지 확인하세요.