일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 페이스북
- Java
- 김장훈의who
- ETF
- 그녀가말했다
- CDMA
- 김장훈
- 사요
- 이지형
- 민동현
- 퀄컴
- 라디오
- 차트쇼쇼쇼
- VoIP
- brew
- USIM
- 유희열의라디오천국
- 한국의 기획자들
- 모던음악만만세
- 공정위
- Wibro
- 위피
- 자바
- 민동현의토요명화
- SWT
- itmusic
- HSDPA
- 러시아
- "명탐정 코난"
- EV-DO Rev. B
- Today
- Total
zyint's blog
가변변수 본문
가변 변수
때때로 가변 변수명을 갖을수 있는것다는 것은 편리함을 준다. 즉, 변수명이 유동적으로 설정되거나 사용될수 있다. 일반적인 변수는 다음과 같은 구문에 의해 설정된다:
<?php
$a = 'hello';
?>
가변변수는 변수값을 취해서 변수명으로 취급한다. 위 예제코드는, hello를 두개의 달러사인을 사용하여 변수명으로 사용할수 있다.
<?php
$$a = 'world';
?>
이 지점에서 두 변수가 선언되었고 PHP 심볼 트리에 저장된다: $a는 "hello" 값을 갖고 $hello는 "world" 값을 갖게 된다. 따라서, 이 구문:
<?php
echo "$a${$a}";
?>
다음과 완전히 똑같이 출력된다:
<?php
echo "$a$hello";
?>
즉, 둘다 hello world를 출력한다.
배열을 갖는 가변변수를 사용하기 위해서는 애매한 문제를 해결해야 한다. 즉 $$a[1]를 쓴다면 해석기는 $a[1]가 변수를 의미하는지 알수 있어야 한다. 또는 $$a가 변수이기를 바라고, [1]가 그 변수의 인덱스인지 알수 있어야 한다. 이런 애매한 문제를 해결하기 위한 문법: 첫번째 목적을 위해 ${$a[1]}과 두번째 목적을 위해 ${$a}[1]을 들수 있다.
Warning
가변 변수로 함수나 클래스 메쏘드 안에서 PHP 자동 전역 배열을 사용할 수 없음에 주의하십시오. $this 변수도 특수 변수로써, 동적으로 참조할 수 없습니다 .
참고자료
http://www.php.net/manual/kr/language.variables.variable.php
이 글은 스프링노트에서 작성되었습니다.