1. list()
list($key, $value)
- list() 함수는 배열로 받은 것을 키와 배열 값으로 나누어 준다.
2. each()
each($array)
- each() 는 배열을 받아서 키와 값으로 되돌려 주는 역할을 한다.
- 배열 값을 가지고 올 때 처음부터 가지고 오며, 그 다음이 불러지면 자동으로 다음 배열을 가지고 온다.
따라서 while 문이 계속 돌아간다.
each()에서 받은 배열을 list에서 키와 배열 값으로 나누어 주는 것이다.
/* 예제 */
<?php
$colors = array("ext"=>"blue", "trim"=>"black", "fab"=>"yellow", "das"=>"hunter green");
reset($colors);
while (list($key, $value) = each($colors)) {
print "$key: $value<BR>";
}
?>
/* 예제 설명 */
reset($colors); → $colors 배열의 처음으로 포인터 이동.
list($key, $value); → 배열의 key와 value 값을 부름. (여기서는 "ext"와 "blue"를 부름)
each($colors); → $colors 배열을 선택. 다음에 불려질 때는 포인터가 하나 증가함.
list($key, $value) = each($colors); → $color 배열의 값을 $vlaue에, 키 값을 $key에 할당한다.
2. foreach()
foreach ($array as $key => $val)
- $array 배열의 키 값은 $key에, 배열 값은 $val에 나누어 할당한다.
- foreach ($array as $value)는 배열 값만 $value에 할당한다.
- $array 배열 값이 존재할 때까지 자동으로 루프를 돌게 된다.
- list()에 비해 내부적으로 더 빠르다.
[출처] 배열 조작 함수 list()와 foreach()|작성자 꼬마마녀
'프로그래밍 > PHP' 카테고리의 다른 글
PHP - list() 함수 배열처럼 변수에 할당 (0) | 2014.02.12 |
---|---|
PHP - isset, unset 함수 (0) | 2014.02.04 |
PHP - addslashes(), stripslashes() 그리고, get_magic_quotes_gpc() (0) | 2014.01.07 |
PHP - trim (0) | 2014.01.07 |
php $_SERVER 함수 (0) | 2013.12.15 |
PHP - flock 함수 (0) | 2013.11.29 |
PHP - mysql_num_rows 의미 (0) | 2013.11.29 |
unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in 해결법 (0) | 2013.11.26 |