1.array()

배열을 생성한다.


2.list(변수1, 변수2 ...)

배열의 원소를 한번에 가져와 지정한 여러 변수에 저장한다.


$munu=array("pizza","cola","pasta");  //$menu[0]=pizza, $menu[1]=cola, $menu[2]=pasta

list($first, $second, $third)=$menu  

$first=pizza, $second=cola, $third=pasta


3.each(배열)

배열로부터 배열 원소의 키와 값을 배열의 형태로 반환한다.

배열의 포인터가 이동해 가며 원소 하나씩 키와 값을 반환하는 것이므로

한번 호출시마다 하나의 키와 값 쌍을 얻을 수 있다.

따라서 다음 원소의 값을 얻으려면 each() 함수를 다시 호출해야 한다.

배열의 끝에 이르면 false를 반환한다.


$munu=array("A"=>"pizza","B"=>"cola","C"=>"pasta");

$item=each($menu);

$item[0]=A          //참조키가 0인 원소에는 배열의 키나 인덱스(키값이 없는 일반배열인 경우)가 저장

$item[1]=pizza    //참조키가 1인 원소에는 배열의 값이 저장된다.

$item[key]=A      //키값이 없는 일반 배열일 경우 배열의 인덱스 번호인 0이 저장된다.

$item[value]=pizza


4.key(배열)

연관 배열에서 현재 배열 포인터가 가리키는 원소의 키를 반환한다.


$menu=array("a"=>"pizza", "b"=>"cola","c"=>"apple");

echo key($menu)."<br>";         //a
echo current($menu)."<br>";    //pizza
echo next($menu)."<br>";        //cola
echo prev($menu)."<br>";        //pizza
echo end($menu)."<br>";        //apple
echo reset($menu);                //pizza


5.current(배열)

연관 배열에서 현재 커서가 가리키는 원소의 원소값을 가리킨다.


6.next(배열)

배열 내에서 배열 포인터를 그 다음 위치로 이동시킨 후 이동된 위치에 있는 원소의 값을 반환한다.


7.reset(배열)

배열 포인터의 위치를 처음으로 되돌린 후 첫 번째 원소의 값을 반환한다.


8.prev(배열)

배열 포인터를 이전 위치로 이동 시킨후 그 값을 반환한다.


9.end(배열)

배열 포인터를 가장 끝으로 이동 시킨 후 마지막 원소의 값을 반환한다.


10.in_array(찾고자하는 원소,  배열)

배열내에서 찾고자 하는 원소가 있으면 true, 그렇지 않으면 false를 반환

if(in_array("pasta",$menu))

echo "찾았습니다."


11.sizeof(배열)

배열 원소의 개수를 반환한다.


12.range(a , b)

a와 b 사이의 모든 정수를 그 원소로 갖는 배열을 생성한다.

$num=range(1,10)

//$num[0]=1, $num[1]=2,  ....... num[9]=10


13.shuffle(배열)

배열내 원소의 순서를 무작위로 바꾼다.

$num=range(1,10)

shuffle($num)


14.pos(배열)

배열 포인터가 가리키는 원소의 값을 반환한다. current()와 완전히 동일하다


15.sort(배열,[정렬기준])

배열의 원소를 정렬한다.

정렬기준:

SORT_REGULAR : 배열 원소를 정상적으로 비교하여 정렬

SORT_NUMERIC : 수치의 크기를 기준으로 정렬

SORT_STRING   :  문자열로 취급하여 정렬


$num = array (123, 23, 108, 293, 119);
sort ($num);
for ( $i=0 ; $i<sizeof ($num) ; $i++)
 echo $num[$i]." ";               //23    108   119   123   293


sort ($num, SORT_STRING);    //108   119   123   23   293


*ord(값) 해당 값의 아스키 코드값을 얻어온다.


16.ksort(배열, [정렬기준])

배열의 원소를  참조키를 기준으로 정렬한다.


17.asort(배열, [정렬기준])

배열의 원소를 정렬하되 원소의 키 값은 섞이지 않고 고유의 값을 유지시킨다.

$menu=array(123,25,108,291)

asort($menu)

//menu[2]=25

   menu[3]=108

   menu[1]=123

   menu[4]=291


18.rsort(배열, [정렬기준])

배열을 역순으로 정렬한다.


19.arsort(배열, [정렬기준])

배열을 역순으로 정렬하되 원소의 키 값은 섞이지 않고 고유의 값을 유지한다.


20.krsort(배열, [정렬기준])

배열을 역순으로 정렬하되 참조키를 기준으로 정렬한다.


21.array_pop(배열)

배열로부터 마지막 원소를 제거하고 제거된 원소를 반환한다.


22.array_push(배열, 추가할원소1, 추가할원소2 ...)

배열의 마지막 위치에 새로운 원소를 추가하며 증가된 배열의 총크기를 값으로 반환한다.


23.array_shift(배열)

배열의 처음 위치에 있는 원소를 제거하고 제거된 원소를 반환한다.


24.array_unshift(배열, 추가할원소1, 추가할원소2 ...)

배열에 새로운 원소를 추가하되 배열의 처음 위치에 삽입하며 증가된 배열의 총크기를 값으로 반환한다.

기존 배열값이 밀리는 것이지 지워지는 것은 아니다.


25.array_unique(배열)

배열의 원소 중에서 동일한 값을 갖는 원소들의 중복을 제거한다.


26.array_values(배열)

배열의 참조키를 제외한 원소의 값만을 그 원소로 갖는 배열을 반환한다.


27.array_keys(배열, [특정배열의값])

배열의 참조키를 그 원소로 갖는 새로운 배열을 반환한다.

연관배열은 참조키를 스칼라 배열은 인덱스를 그 원소로 갖는다.

배열의 특정 원소값을 지정할 경우 그 키값만을 반환하는 원소 하나짜리 배열이 생성된다.


28.array_reverse(배열)

배열내 원소의 순서를 역전시킨다.


29.array_rand(배열, 추출할 원소개수)

배열에서 무작위로 지정한 개수만큼의 원소를 추출한다.

이때 반환되는 값은 원소의 값이 아니라 원소의 참조키이다.


30.array_pad(배열, 확장후배열크기, 추가할원소)

배열을 지정한 크기만큼 확장하고 확장된 크기만큼 지정한 값을 저장하여 확장된 배열을 반환한다.

확장후배열크기에 음수를 넣으면 추가된 원소가 왼쪽에 붙는다.

$menu=array("pizza","cola","pasta")

$new=array_pad($menu, 5, "tomato")

//$new[0]=pizza  $new[1]=cola  $new[2]=pasta  $new[3]=tomato  $new[4]=tomato


31.array_walk(배열, 함수명)

배열의 각 원소에 사용자가 정의한 함수를 적용한다.


function likefruit($value,$key){

echo "이름 : $value   과일: $key <br>";

}

$fruit=array("영이"=>"apple", "철수"=>"orange", "미숙"=>"banana");

array_walk($fruit, likefruit);

결과:

이름 : apple        과일: 영이
이름 : orange      과일: 철수
이름 : banana     과일: 미숙


32.array_merge(배열1, 배열2 ...)

여러 개의 배열을 하나로 합친다.

만일 합치고자 하는 배열들에 동일한 키값을 가진 원소가 있을 경우 나중값의 원소가 그 값을 대체한다.

$menu1=array("a"=>"pasta", "b"=>"pizza")

$menu2=array("a"=>"cola", "c"=>"pasta")

$menu=array_merge($menu1, $menu2)

//$menu[a]=cola  $menu[b]=pizza  $menu[c]=pasta 


33.array_diff(배열1, 배열2 ...)

인자로 전달한 배열의 차이를 다시 배열의 형태로 반환한다.


34.array_intersect(배열1, 배열2 ...)

인자로 전달받은 배열에서 같은 값을 갖는 원소만을 배열의 형태로 반환한다.


35.array_count_values()

:배열 안에 같은 값이 얼마나 나왔는지 수를 연관배열로 리턴한다.


$array = array(1, "hello", 1, "world", "hello");

$num = array_count_values($array);

//$num[1]=2     $num[hello] = 2    $num[world]=1 


36.print_r()

:배열의 구성 요소를 한 눈에 알 수 있게 정렬해 주는 함수

<pre>

<?php

$a=array ('a'=>'사과', 'b'=>'바나나', 'c'=>array('x','y','x'));

print_r($a);

?>

</pre>


결과:

Array

(

   [a] => 사과

   [b] => 바나나

   [c] => Array

       (

            [0] => x

            [1] => y

            [2] => z

        )

)


37.var_dump()

print_r() 함수보다 더 자세한 배열의 구조를 보여준다. 정수인지, 문자열인지 배열의 형까지 표시된다.


38.foreach()

:list() 함수와 동일한 기능을 하나, 더 빠른 foreach()를 많이 쓴다.

$array라는 배열 값이 존재할 때까지 자동으로 루프를 돈다.


.foreach($array as $value)   :  $array라는 배열의 값만 $value에 할당한다.

.foreach($array as $key=>$value)  : 배열의 키 값은 $key에, 배열값은 $value에 할당한다.


<?

$arr=array("홍길동","임꺽정","이순신");


foreach($arr as $value){

echo $value. "<br>";

}

?>


결과:

홍길동

임꺽정

이순신


'PHP' 카테고리의 다른 글

정규식  (0) 2012.03.14
1. 날짜 및 시간 함수  (0) 2007.11.08

+ Recent posts