본문 바로가기
PHP

PHP 배열의 기초[PHP개발]

by cellin 2023. 11. 1.

배열(array)이란?

PHP에서 배열(array)은 맵(map)으로 이루어진, 순서가 있는 집합

맵(map)은 한 쌍의 키(key)와 값(value)으로 구성

이때 배열을 구성하는 각각의 맵을 배열 요소(array element)라고 함

 

** 배열은 데이터를 많이 다뤄야 하는 경우 사용할 수 있는 가장 기본적인 자료 구조

 

대표사진 삭제
 

사진 설명을 입력하세요.

 

 

 

PHP 배열 세 가지 종류

1. 1차원 배열

2. 다차원 배열

3. 연관 배열

 

 

 

1차원 배열

출처 입력

문법

$배열이름 = array();
 

 

배열 요소의 참조

 

$배열이름[인덱스]
 

 

 

배열 요소의 추가

$arr = array();     // 배열 생성
$arr[0] = "A";  // 배열 요소 추가
$arr[1] = "B";
$arr[2] = "C";
 

 

배열을 생성하면서 동시에 배열 요소를 초기화

$arr = array("A", "B", "C");  // 배열 생성과 동시에 초기화
 

 

 

 

 

 

 

 

2차원 배열

출처 입력

문법

$배열이름 = array(
    array(),
    array(),
    ...
);
 

 

2차원 배열 요소 입력

<?php
	$arr = array( // 1차원 배열을 3개 갖는 2차원 배열 선언
    array(),
    array(),
    array()
	);

	$arr[0][0] = "A"; // 배열 요소 입력
	$arr[0][1] = "p1";
	$arr[0][2] = 10;

	$arr[1][0] = "B";
	$arr[1][1] = "p2";
	$arr[1][2] = 20;

	$arr[2][0] = "C";
	$arr[2][1] = "p3";
	$arr[2][2] = 15;
	
	echo $arr[0][0].", ".$arr[0][1].", ".$arr[0][2]."<br>";
	echo $arr[1][0].", ".$arr[1][1].", ".$arr[1][2]."<br>";
	echo $arr[2][0].", ".$arr[2][1].", ".$arr[2][2];
?>
 

 

 

 

결과

A, p1, 10
B, p2, 20
C, p3, 15
 

 

 

 

 

 

 

루프를 이용한 2차원 배열 접근

 

 

 

EXAMPLE

<?php
	$arr = array(
		array("A", "P1", 1000),
		array("B", "P2", 2000),
		array("C", "P3", 1500)
	);

	for($row = 0; $row < count($arr); $row++) {
		for($column = 0; $column < count($arr[$row]); $column++){
			echo $arr[$row][$column].", ";
		}
		echo "<br>";
	}
?>
 

결과

A, P1, 1000,
B, P2, 2000,
C, P3, 1500,
 

 

 

3차원 배열

 

 

문법

$배열이름 = array(
    array(
        array(),
        array(),
        ...
    ),
    array(
        array(),
        array(),
        ...
    ),
    ...
);
 

 

3차원배열의 생성 및 초기화

$배열이름 = array(
    array(

        array(배열요소000, 배열요소 001, ...),

        array(배열요소010, 배열요소 011, ...),

        ...

    ),
    array(

        array(배열요소100, 배열요소 101, ...),

        array(배열요소110, 배열요소 111, ...),

        ...

    ),
    ...
);
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

사진: UnsplashTai Bui

728x90
반응형