웹개발 및 최신 테크 소식을 전하는 블로그, 웹이즈프리

HOME > php

[PHP] 배열 관련 기본함수 정리, 선언, 크기, 추가, 제거등등

Last Modified : 2019-08-06 / Created : 2014-01-29
33,391
View Count
프로그래밍에서 항상 중요한 부분을 차지하는 데이터 타입이 바로 배열입니다. 아래에서는 php에서의 배열(Array)에 대하여 간단히 알아봅니다.


PHP에서도 데이터 타입 중 하나인 배열(Array)이 존재하며 많이 사용됩니다. 아래는 배열과 관련된 기본적인 내용 및 함수들을 모아서 정리한 내용입니다. 


! Array 배열값 출력하기

시작에 앞서 배열이 무엇이고 배열값 출력 방법을 살펴보겠습니다. 배열은 연결된 데이터 값을 가지는 하나의 묶음으로 생각하시면 좋습니다. 이때 구분자를 콤마(,)를 사용하여 [] 연결되게됩니다.

$test = [1, 2, 3]


이처럼 배열 안에선 각각의 값들을 가질 수 있습니다. 만약 배열 안에서 하나의 값만 가져올 경우 그 순서값을 사용하는데 처음 위치는 0이됩니다. 즉 위에서 2를 가져올 경우 $test[1]이 됩니다. 다음의 3은 $test[2]가 되죠.

다음으로 배열의 화면 출력시 방법인데 일반적으로 출력하기 위해서 echo()를 사용합니다. 하지만 배열값을 출력하기 위해 echo()를 사용하면 어떻게될까요? 실제 배열에 담긴 값이 출력되지 않고 Array라는 문구만 반환하게됩니다. 즉 타입만 가져와 보여주므로 배열이 가진 각각의 값을 확인하기 어렵습니다. 하지만 print_r()을 쓰면 가지고 있는 값을 모두 보여줍니다. 그럼 아래 예제를 봐주세요.
$test = [0, 1, 2] // 0, 1, 2를 가진 배열
print_r($test)

Array ( [0] => 0 [1] => 1 [2] = 2 ); // 위치 index값과 value 값 모두 출력

이처럼 배열의 값을 확인하는 경우에는 간단하게 print_r()을 사용하며 됩니다.



# php 배열의 선언

배열을 선언하는 방법은 변수 선언과 크게 다르지 않습니다. 변수 $test에 1, 2, 3을 배열로 선언하는 방법은 아래처럼 두가지가 있습니다. 먼저 아래처럼 괄호안에 인덱스 순서값을 넣어 하나하나 정하는 방법이 있습니다.
$test[0] = 1;
$test[1] = 2;
$test[2] = 3;

위와같이 배열을 리터럴로 선언할 수 있습니다. 다음은 array()를 이용하는 방법입니다.
$test = array(1, 2, 3);

위 두가지 방법은 모두 동일한 값을 가지는 php의 배열 $test를 생성합니다. 참고로 아래처럼 빈배열(값이 없는)을 만들수도 있습니다.
$test = array(); // 빈 배열인 경우

빈배열은 선언할 일은 많지 않으나 일반적으로 뒤에 사용되는 변수를 미리 선언하는 경우 빈 배열값이 사용됩니다.


! 배열의 길이(크기) 확인하기 배열이 몇개의 값을 가지는지 어떻게하면 알 수 있을까요? count()를 사용합니다. 사용방법은 아래와 같습니다.
count($test);

* 배열에 새로운 값을 추가 또는 제거(삭제)하기
배열의 앞 또는 뒤에 새로운 값을 추가하거나 뺄 수 있습니다.


! 배열의 맨 끝에 추가

배열에 새로운 값을 추가합니다. 이때 입력된 값은 배열의 맨 뒤에 삽입됩니다.

array_push(참조배열, 추가할 값)

아래는 array_push()를 사용하여 배열을 추가한 예제입니다.
$test = array('1', '2', '3');
// $test라는 배열을 선언

array_push($test, '4');
// 배열의 맨 뒤에 '4'라는 새로운 값을 추가

echo $test[3]; // 4를 출력함

참고로 아래처럼 여러개의 배열값을 추가할 수도 있습니다.
array_push($test, '4', '5', '6');
// 하나가 아닌 여러개의 값을 배열에 추가할 수 있음


# 배열의 맨 앞에 추가

배열의 뒤에 추가하지 않고 맨 앞에 추가할 경우도 있겠죠~ 이때는 array_unshift()를 사용하면 가능합니다.

array_unshift(참조배열, 추가할 값)

그럼 아래 예제를 참고하세요!
$test = array('1', '2', '3');
// $test라는 배열을 선언

array_unshift($test, '0');
// 배열의 맨 앞에 '0'라는 새로운 값을 추가

​echo $test[0];
// 0을 출력함

print_r($test);
// 모든 값을 출력함



# 배열의 일부(선택 범위) 출력

아래 함수는 배열의 일부를 버리거나 일부만 출력하기 위한 방법입니다. 배열을 자르기 위한 경우는 알아보세요.

array_slice(참조배열, 시작위치, 길이)

예를들어 아래와 같이 사용할 수 있습니다.
$test = array('1', '2', '3');
// $test라는 배열을 선언

$test2 = array_slice($test, 1, 2);
// 2, 3만 출력함

위 예제는 간단하게 배열값 원하는 위치의 값만 남기고 자르게하는 예제입니다.

Previous

[PHP] 문자열에서 특정 문자를 다른 문자로 치환, 변환하는 방법, 정규표현식 사용

Previous

[PHP] 이전 페이지 주소 불러오기