php

[php 튜토리얼] 5회차 / php 배열(array)

namgi 2022. 9. 4. 22:28
반응형

php 5회차다.

오늘은 블로그를 두 개 쓴다..

오늘은 배열에 대해 배웠다.

 

php 배열(array)

  • 인덱스 배열
  • 연관 배열
  • 다차원 배열

인덱스 배열 - array() 안에 배열 할당

<?php
//color 변수에 인덱스 할당
$color = array("빨강", "주황", "파랑");

//할당한 인덱스를 출력
echo "저는 " . $color[0] . "색과 " . $color[1] . ", " . $color[2] . "색을 좋아합니다.";
?>

$color 변수 안에 인덱스를 할당한다.

인덱스는 항상 0부터 시작한다.

코드 실행 결과

전 회차에서 배운 for문으로 인덱스 배열 루프문을 만들어보자.

<?php
//color 변수에 인덱스 할당
$color = array("빨강", "주황", "파랑");

//color 변수를 카운트
$arrcount = count($color);

//변수 i가 $arrcount에서 카운트된 수 보다 작을 때 까지 반복
for($i = 0; $i < $arrcount; $i++) {
  
  //$color에서 인덱스를 가져와 출력
  echo $color[$i];
  
  //한 칸 띄어줌(Enter 역할)
  echo "<br>";
}
?>

실행 결과는 다음과 같다

연관 배열 - name과 key를 사용하는 배열

<?php 
//age 변수에 '남기', '지민', '서현'의 값을 지정
$age = array("남기"=>"16", "지민"=>"19", "서현"=>"25");

//지정한 '남기'의 값을 출력
echo "남기는 " . $age['남기'] . "살 입니다."
?>

"name"을 정하고 "key"를 정해 배열을 만든다.

6줄 '$age['남기']' 에서 '남기' 가 아닌 '지민' 또는 '서현' 을 입력하면

'지민' 과 '서현' 의 key 값을 출력한다. 

 

전 회차에서 배운 foreach문을 이용하여 모든 값을 출력하게 할 수 있다.

<?php 
//age 변수에 '남기', '지민', '서현'의 값을 지정
$age = array("남기"=>"16", "지민"=>"19", "서현"=>"25");

//변수 $name과 $age_val을 선언하고
foreach($age as $name => $age_val) {

  //출력 코드를 실행
  echo "이름은 " . $name . ", 나이는 " . $age_val . "살 입니다.";
  echo "<br>";
}
?>

실행 결과는 다음과 같다.

다차원 배열 - 하나 이상의 배열을 포함하는 배열

 

이름 남은 개수 팔린 개수
사과 125 25
바나나 110 40
오렌지 70 50

위 표는 2차원 배열이다.

2차원 배열은 배열의 배열이다. (3차원 배열은 배열의 배열의 배열)

 

위 표의 데이터를 이용하여 배열 코드를 밑과 같이 작성할 수 있다.

$fruits = array (
  //array("이름", 남은 개수, 팔린 개수)
  array("사과", 125, 25) ,
  array("바나나", 110, 40) ,
  array("오렌지", 70, 50)
);

왼쪽으로 차례대로 이름, 남은 개수, 팔린 개수를 배열로 정리했다.

정리한 배열을 출력해보자.

<?php
$fruits = array (
  //array("이름", 남은 개수, 팔린 개수)
  array("사과", 125, 25) ,
  array("바나나", 110, 40) ,
  array("오렌지", 70, 50)
);

echo $fruits[0][0].": 남은 개수: ".$fruits[0][1].", 팔린 개수: ".$fruits[0][2].".<br>";
echo $fruits[1][0].": 남은 개수: ".$fruits[1][1].", 팔린 개수: ".$fruits[1][2].".<br>";
echo $fruits[2][0].": 남은 개수: ".$fruits[2][1].", 팔린 개수: ".$fruits[2][2].".<br>";
?>

실행 결과는 다음과 같다.


php 5회차이다.

내일도 6회차로 올 것이다.

반응형