카테고리 없음

php foreach, 2차원 배열

boangod 2025. 9. 18. 17:23

foreach문 → 배열전용 for문(반복문), 배열을 scan 하는 함수

 

 

 

foreach (배열 as $value){

실행문;

}

 

또는

 

foreach (배열 as $key => $value){

실행문;

}

 

 

  • foreach문은 배열의 요소를 하나씩 변수에 전달하면서 배열의 끝까지 반복하는 반복문이다.
  • $value는 배열의 내용을 저장하고 $key는 배열의 킷값을 저장한다.
  • 연관 배열의 경우 매우 편리하게 배열의 내용을 참조할 수 있다.

 

배열 내에 소수합 출력

<?
  $ar = array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
  $cn = count($ar);
  $sum = 0;
  for($i=0; $i<$cn; $i++){
    $value = $ar[$i];
    if($value > 1){
       for($j = 2; $value % $j != 0; $j++){}
       if($value == $j) 
        $sum = $sum + $value;
    }
  }
  echo("$sum &nbsp;&nbsp;");
  echo("<br><hr><br>");
  show_source(__FILE__);
 ?>

 

 

 

 

2차원 배열 →킷값이 두 개인 배열

ㄴ 간단하게 첨자가 2개다.

 

$ar[0][0] = "a"; $ar[0][1] = "b"; $ar[0][2] = "c";

$ar[1][0] = "d"; $ar[1][1] = "e"; $ar[1][2] = "f";

$ar[2][0] = "g"; $ar[2][1] = "h"; $ar[2][2] = "i";

 

 

[행번호][열번호]순으로 기술

 

 

array() 함수를 이용 $ar 배열을 생성

$ar = array(array("a","b","c"), array("d","e","f"),array("g","h","i"))

 

 

 

2차원 배열의 출력

<?
$ar = array(array("학번" => "915301","이름" => "공융", "학과" => "화학"),
            array("학번" => "915302","이름" => "사마간", "학과" => "화학"),
            array("학번" => "915304","이름" => "마초", "학과" => "화학"),
            array("학번" => "925303","이름" => "단규", "학과" => "화학"));
  foreach($ar as $key => $value){
        echo("key_row = $key :  ");
        foreach($value as $key1 => $value1) {
                echo("[$key1] => $value1  ");
        };
    echo("<br>");
 };

  echo("<br><hr><br>");

  $count = count($ar);
  for($i = 0; $i < $count; $i++) {
      echo("row = $i : {$ar[$i]['학번']} - {$ar[$i]['이름']} - {$ar[$i]['학과']} <br>");
  }
  echo("<br><hr><br>");
  show_source(__FILE__);
  ?>