반응형
list
(PHP 4, PHP 5)
list — 배열처럼 변수에 할당
설명
array()처럼, 이 함수는 실제 함수가 아니고 언어 구조이다. list()는 한번의 조작으로 배열 목록을 지정하기 위해 사용된다.
예제
Example #1 list() 예제
<?php
$info = array('coffee', 'brown', 'caffeine');
// 모든 변수를 목록화한다
list($drink, $color, $power) = $info;
echo "$drink is $color and $power makes it special.\n";
// 그들중 일부를 목록화한다
list($drink, , $power) = $info;
echo "$drink has $power.\n";
// 또는 세번째 값으로만 건너띈다
list( , , $power) = $info;
echo "I need $power!\n";
// list()는 문자열에는 작동하지 않습니다
list($bar) = "abcde";
var_dump($bar); // NULL
?>
Example #2 list() 용례
<table>
<tr>
<th>Employee name</th>
<th>Salary</th>
</tr>
<?php
$result = mysql_query ("SELECT id, name, salary FROM employees", $conn);
while (list ($id, $name, $salary) = mysql_fetch_row ($result)) {
echo " <tr>\n" .
" <td><a href=\"info.php?id=$id\">$name</a></td>\n" .
" <td>$salary</td>\n" .
" </tr>\n";
}
?>
</table>
Example #3 중첩 list() 사용하기
<?php
list($a, list($b, $c)) = array(1, array(2, 3));
var_dump($a, $b, $c);
?>
int(1)
int(2)
int(3)
Example #4 배열 인덱스로 list() 사용하기
<?php
$info = array('coffee', 'brown', 'caffeine');
list($a[0], $a[1], $a[2]) = $info;
var_dump($a);
?>
다음과 같이 출력된다 (이 원소들의 순서는 list() 문법에서 쓰여진 순서와 반대라는 점에 주의):
array(3) {
[2]=>
string(8) "caffeine"
[1]=>
string(5) "brown"
[0]=>
string(6) "coffee"
}
주의
Warning
list()는 가장 우측 인수에서 시작하는 값들을 지정한다. 일반적인 변수들을 사용하면, 이 동작에 대해서 신경 쓸 필요가 없다. 그러나 인덱스를 갖는 배열에서 사용한다면 왼쪽에서 오른쪽으로 list()에서 쓰여진것과 같이 배열안의 인덱스 순서로 되는것이라고 보통 기대할수 있으나, 그렇지 않다. 역순으로 지정이 된다.
Note: list()는 숫자 배열에서만 작동하고 0부터 시작하는 숫자 인덱스로 가정한다.
참고
- each() - 배열에서 현재 키와 값 쌍을 반환하고 배열 커서를 전진
- array() - 배열 생성
- extract() - 배열에서 현재 심볼 테이블로 변수를 입력
[출처] PHP list() 함수 - 배열처럼 변수에 할당|작성자 밍밍
'프로그래밍 > PHP' 카테고리의 다른 글
PHP - MYSQL과 PHP를 이용한 간단한 게시판 만들기 (55) | 2014.06.08 |
---|---|
PHP - MYSQL과 PHP를 이용한 방명록 만들기 (0) | 2014.06.05 |
PHP - mysql_error 함수 (0) | 2014.06.05 |
[php] get방식을 이용한 변수 전달 (0) | 2014.06.05 |
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 배열조작함수 list, each, foreach key, val ...펌 (0) | 2013.12.15 |