메뉴 건너뛰기

프로그램언어

2015.04.14 19:19

array (배열)

조회 수 24904 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
배열(array)은 한번에 하나 이상의 값들을 담을 수 있는 특별한 변수이다.
PHP 에서는 array() 함수를 사용하여 배열을 만든다.
array 를 사용하면 코딩도 줄여주면서 쉽게 여러 변수를 생성할 수 있는 장점이 있다.
PHP 에는 배열의 세 가지 유형이 있다:
    Indexed arrays - 숫자 인덱스를 갖는 배열
    Associative arrays - 이름 키(named keys)를 갖는 배열
    Multidimensional arrays - 하나 이상의 배열을 포함하는 배열

1. Indexed arrays
<?php
$cars=array("Volvo","BMW","Toyota");
$arrlength=count($cars);  // count() 함수는 배열의 길이(요소의 개수)를 반환하는데 사용된다.

for($i=0;$i < $arrlength; $i++)
{
  echo $cars[$i];
  echo "<br>";
}
?>
array 에 많은 값을 담게 되면 몇 번째의 내용인지 종종 헷갈릴 수 있는데 이러한 것을 막기 위해 count 함수를 이용한다.
그런데 count() 함수는, "요소 개수가 0인 배열"과 "존재하지 않는 배열" 모두 0을 반환하기에 혼란스러운 점이 있다.
이때는 isset() 함수를 사용하여 그 배열이 실재하는지 우선 체크하는 것이 좋다.

<?php
$cars=array("Volvo","BMW","Toyota");
sort($cars);    // 오를차순으로 정렬, rsort()는 내림차순으로 정렬
$arrlength=count($cars);  // count() 함수는 배열의 길이(요소의 개수)를 반환하는데 사용된다.

for($i=0;$i < $arrlength; $i++)
{
  echo $cars[$i];
  echo "<br>";
}
?>

2. 연계 배열(Associative Arrays)
연계 배열(Associative arrays)은 값을 할당하는데 이름 키(named keys)를 사용하는 배열이다

<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
echo "Peter is " . $age['Peter'] . " years old.";
?>
배열로 표기된 것을 아래와 같이 표기할 수 있다.
$age['Peter']="35";
$age['Ben']="37";
$age['Joe']="43";

<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");

foreach($age as $key => $value) {
     echo "Key=" . $key . ", Value=" . $value;
     echo "<br>";
}
?>

결과는
Key=Peter, Value=35
Key=Ben, Value=37
Key=Joe, Value=43

=> 를 기준으로 좌측에 있는 부분을 키값이라고 하고, 우측에 있는 부분을 값이라고 한다.

<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
asort($age);    // 값에 따라 오름차순으로 연관된 배열을 정렬한다.
foreach($age as $key => $value) {
     echo "Key=" . $key . ", Value=" . $value;
     echo "<br>";
}
?>

ksort() 는 키값에 따라 오름차순으로 연관된 배열을 정렬한다.
arsort() 는 값에 따라 내림차순으로 연관된 배열을 정렬한다.
krsort() 는 키값에 따라 내림차순으로 연관된 배열을 정렬한다.

3. Multidimensional Arrays
다차원 배열(multidimensional arrays)은 하나 이상의 배열을 포함하는 배열이다.
<?php
$cars = array
   (
   array("Volvo",22,18),
   array("BMW",15,13),
   array("Saab",5,2),
   array("Land Rover",17,15)
   );
 
echo $cars[0][0].": In stock: ".$cars[0][1].", sold: ".$cars[0][2].".<br>";
echo $cars[1][0].": In stock: ".$cars[1][1].", sold: ".$cars[1][2].".<br>";
echo $cars[2][0].": In stock: ".$cars[2][1].", sold: ".$cars[2][2].".<br>";
echo $cars[3][0].": In stock: ".$cars[3][1].", sold: ".$cars[3][2].".<br>";
?>

List of Articles
번호 제목 날짜 조회 수
340 $_FILES 2016.12.23 23847
339 $_SERVER 함수 2016.12.23 23943
338 $_SERVER 환경변수 2016.09.21 33237
337 $_SERVER변수 2014.02.27 24443
336 13자리 timestamp 생성하기 file 2020.09.28 649
335 addslashes — 문자열을 슬래시로 인용 2016.12.23 23083
334 addslashes 함수의 필요성 2015.04.14 24250
333 ajax refresh 시키기(자동리플래쉬) with php file 2017.03.06 23185
332 Ajax로 구연한 실시간 서버시간출력 file 2017.03.06 21031
331 AJAX로 해당 페이지에서 COOKIE 사용하기 2021.03.26 359
330 AJAX를 활용하여 JSON 댓글 처리하기 (PHP) 2018.07.04 8454
» array (배열) 2015.04.14 24904
328 array_key_exists 배열에서 key가 존재하는지 확인 2016.12.23 22206
327 array_push 배열 끝에 하나 이상의 요소를 추가 2016.12.23 21604
326 array_slice 배열의 일부를 추출 2016.12.23 20775
325 base64 인코딩/디코딩 함수의 특징 file 2018.02.09 13078
324 call_user_func 사용자가 정의한 함수를 호출하여 실행고자 할 때 사용 2016.12.23 21302
323 class_exists 클래스가 정의되었는지 확인 2016.12.23 19881
322 Class를 이용한 DB Connection 소스 (Oracle, MyS 2014.02.27 30503
321 CodeIgniter - DB오류체크, 디버깅 여부 설정 2021.03.29 494
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved