。공부 。

<PHP> array배열 일차원과 다차원

kyoe 2007. 10. 11. 23:04
array 타입은 배열을 다루기 위한 변수형으로써 PHP에서는 배열을 키(key)와 값(value)의 쌍으로 구성된 원소의 집합체로 이룬다.

*인덱싱배열과 연관 배열*
PHP 배열에서 원소의 키는 정수형의 숫자 또는 문자열이어야 하며 원소의 값은 어떤 변수형의 값이든 될수 있다.

- 일차원 인덱싱배열
$school = array("1반","2반","3반");
echo $school[1].'<br>';
(출력결과)
1반

- 일차원 연관배열
$family = array("부"=>'아버지',"모"=>'어머니');
echo $family["부"];
(출력결과)
아버지

- 인덱싱배열과 인덱싱배열을 같이 써보자.
  숫자로 된 키를 갖는 원소와 문자열로 된 키를 갖는 원소가 함께존재하는배열도가능하다.
$fruit = array('사과',"원숭이"=>'바나나',"제주도"=>'귤','감');
echo $fruit[0].'<br>';
echo $fruit["원숭이"].'<br>';
echo $fruit[1];
(출력결과)
사과
바나나


-처음 '사과'는 키를 지정해주지 않았으므로 $fruit[0]이란 값으로 참조할수있다.
-바나나는 문자열키 '원숭이'로 참조한다.
-마지막 4번째 원소인 '감'역시 키를 지정해주지 않았다 그 사이에 문자열키가
 있지만 이럴땐 숫자로된 가장큰 정수형키보다 1큰값을 키로 갖는다.

* 다차원 배열 *
- 배열안에 또다른배열이 중첩적으로 있는것을 다차원 배열이라 한다.
$member = array(array("이름"=>'홍길동',"나이"=>24,"성별"=>"남"),
                        array("이름"=>'성춘향',"나이"=>20,"성별"=>"여"));
echo $member[0]["이름"].'<br>';      
echo $member[1]["이름"];
(출력결과)
홍길동
성춘향

- 배열속의 첫번째배열은 키를 지정해주지않았으므로 0값을 갖는다.

- 배열안의 배열을 문자열키로 참조할수있다.(결과값은 위와 동일하다.)
$member = array("남자주인공"=>array("이름"=>'홍길동',"나이"=>24,"성별"=>"남"),
                        "여자주인공"=>array("이름"=>'성춘향',"나이"=>20,"성별"=>"여"));
echo $member["남자주인공"]["이름"].'<br>';   //첫번째 배열을 문자열키 "남자주인공"으로
                                                                   //했으므로 숫자키대신 문자열키를 써준다.
echo $member["여자주인공"]["이름"];
(출력결과)
홍길동
성춘향