PHP for문& foreach문

서린·2024년 3월 14일
0

greenstudy

목록 보기
20/44
post-thumbnail

for문 이란?

  • 특정 처리를 반복해서 구현할때 사용하는 문법
  • 기본 공식
<?php
// 기본문법
for(초기값; 조건식; 증감연산자) { 
	반복 하고 싶은 처리
}
  • 예시
for($i = 1; $i < 3; $i++) {
    echo $i."번째 루프\n";
}

continue

  • continue 아래의 처리를 건너뛰고 다음루프로 진행
  • 예시
for($i = 1; $i < 11; $i++) {
    if($i === 3 || $i === 6 || $i === 9) {
        continue;
    }
    echo $i."번째 루프\n";
}

break문

  • 처리중 break문을 만나면 루프를 종료
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";
    }
}

구구단 2단 실습

$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문 이란?

  • 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";
    }
  • 예제2
$arr =[
    ["name" => "홍길동", "age" => 20, "gender" => "남자"]
    ,["name" => "갑순이", "age" => 20, "gender" => "여자"]
    ,["name" => "갑돌이", "age" => 30, "gender" => "남자"]
];
  • "name의 나이는 age이고, 성별은 gender입니다." 라고 출력해주세요
    foreach($arr as $item) {
      echo $item["name"]."의 나이는 ".$item["age"]."이고, 성별은 ".$item["gender"]."입니다.\n";
    }
  • 예제3
$arr = [
	["id" => "meerkat1", "pw" => "php504"]
	,["id" => "meerkat2", "pw" => "php504"]
	,["id" => "meerkat3", "pw" => "php504"]
];
  • 위와 같은 배열이 있을때 밑에 처럼 출력
    ID List
    meerkat1
    meerkat2
    meerkat3
    echo "ID List\n";
    foreach($arr as $item){
       echo $item["id"]."\n";
    }
  • 예제4 ) 진짜 어려웠던 예제 ,,, max 를 쓰지 않고 만들기는 진짜 어렵다,,
// 배열의 값중 가장 큰 수, 작은 수를 구해주세요.
// 예시) $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";
profile
개발 일기 ( •̀ ω •́ )✧

0개의 댓글

관련 채용 정보