<?php
// 기본문법
for(초기값; 조건식; 증감연산자) {
반복 하고 싶은 처리
}
for($i = 1; $i < 3; $i++) {
echo $i."번째 루프\n";
}
for($i = 1; $i < 11; $i++) {
if($i === 3 || $i === 6 || $i === 9) {
continue;
}
echo $i."번째 루프\n";
}
for($i = 1; $i < 11; $i++) {
// 특정 조건일때 루프문 종료
if($i === 3){
// break : 루프를 종료
break;
}
echo $i."번째 루프\n";
}
$arr = [1,2,3,4,5,6,7,8,9,10];
$loop_cnt = count($arr);
for($i = 0; $i < $loop_cnt; $i++) {
echo $arr[$i];
}
for($i = 1; $i < 3; $i++){
echo "1번 LOOP : ".$i."번째\n";
for($z = 1; $z < 3; $z++){
echo "\t2번 LOOP : ".$z."번째\n";
}
}
$dan = 2;
for($multi_num = 1; $multi_num < 10; $multi_num++){
$msg_line = $dan." X ".$multi_num."=".($dan * $multi_num)."\n";
echo $msg_line;
}
for($dan = 2; $dan < 10; $dan++){
echo "** ".$dan."단 **\n";
for($multi_num = 1; $multi_num < 10; $multi_num++){
$msg_line = $dan." X ".$multi_num."=".($dan * $multi_num);
echo $msg_line."\n";
}
}
foreach 반복문은 다른 제어문과 달리 배열에만 동작함. 배열에 속한 키(Key)와 원소(Value)를 쉽게 분리할 수 있을 뿐 아니라 배열의 원하는 원소를 변수로 가져올수 있음
예시로 이런 배열이 있다고 치면
$arr = [9,8,7,6,5];
foreach($arr as $val){
echo $val."\n";
}
foreach($arr as $key => $val) {
echo "key : $key, value: $val\n";
}
$arr =[
["name" => "홍길동", "age" => 20, "gender" => "남자"]
,["name" => "갑순이", "age" => 20, "gender" => "여자"]
,["name" => "갑돌이", "age" => 30, "gender" => "남자"]
];
foreach($arr as $item) {
echo $item["name"]."의 나이는 ".$item["age"]."이고, 성별은 ".$item["gender"]."입니다.\n";
}
$arr = [
["id" => "meerkat1", "pw" => "php504"]
,["id" => "meerkat2", "pw" => "php504"]
,["id" => "meerkat3", "pw" => "php504"]
];
echo "ID List\n";
foreach($arr as $item){
echo $item["id"]."\n";
}
// 배열의 값중 가장 큰 수, 작은 수를 구해주세요.
// 예시) $arr2 = [4,5,7,3,2,9];
$min = $max = $arr2[0];
$srt = ""; // 값 초기화
$obj = null; // 값 초기화
$arr = 0; // 값 초기화
$arr = [4,5,7,3,2,9];
$max_num = 0;
$min_num = $arr[0];
foreach($arr as $val) {
// MAX 값
if($max_num < $val) {
$max_num = $val;
}
// 최소값
if($min_num > $val){
$min_num = $val;
}
}
echo $max_num."\n";
echo $min_num;
echo "\n";