웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
[PHP]모르는 분이 있는듯 해서...변수관련
2002.01.24 20:51
오늘은 PHP변수 출력 등에 관한 이야기를 해보자 합니다.
기초문법이긴 하지만 꽤 많이 잊혀졌었던 건데요..${}을 사용하면 {} 사이의 것만 변수로 인식한다는 것입니다.
예를 들어 PHP에서 변수와 한글을 다음과 같이 출력해 봅시다.
$a = "123";
echo "$a의 값은 $a입니다";
이렇게 해서
$a의 값은 123입니다
처럼 출력할 때가 있습니다. 하지만 이렇게 하면
$a의 값은
으로 출력됩니다. 왜 그럴까요?
PHP해석 엔진(파서)가 $a입니다 를 독자적인 123과 입니다로 처리하는게 아니라, " $a입니다 "라는 하나의 변수로 보기 때문입니다. 물론 이런 변수는 없기 때문에 아무것도 출력되지 않죠.
그래서 많은 사람들은 이를 출력할 때
$a = "123";
echo "$a의 값은 ".$a."입니다";
이렇게 조합해서 사용합니다.
하지만, {}를 이용하면 조합할 필요가 없습니다.
{}를 이용하면 변수를 독립적으로 묶어주게 됩니다.
즉,
echo "$a의 값은 ${a}입니다";
를 입력하게 되면, 실제로
$a의 값은 123입니다
가 출력됩니다.별도의 변수와 문자열로 보는 것이지요,
저 부분은 가변변수라고 해서
$a = "123"
echo ${$a}; // $123의 값 출력
echo ${$a."456"); // $123456의 값 출력
처럼 사용도 가능합니다.
이는 디비 쿼리문에서도 유용하게 사용될 수 있습니다.
많은 사람들이 아는걸 괜히 떠는건 아닌지 모르겠네요..^^;;
기초문법이긴 하지만 꽤 많이 잊혀졌었던 건데요..${}을 사용하면 {} 사이의 것만 변수로 인식한다는 것입니다.
예를 들어 PHP에서 변수와 한글을 다음과 같이 출력해 봅시다.
$a = "123";
echo "$a의 값은 $a입니다";
이렇게 해서
$a의 값은 123입니다
처럼 출력할 때가 있습니다. 하지만 이렇게 하면
$a의 값은
으로 출력됩니다. 왜 그럴까요?
PHP해석 엔진(파서)가 $a입니다 를 독자적인 123과 입니다로 처리하는게 아니라, " $a입니다 "라는 하나의 변수로 보기 때문입니다. 물론 이런 변수는 없기 때문에 아무것도 출력되지 않죠.
그래서 많은 사람들은 이를 출력할 때
$a = "123";
echo "$a의 값은 ".$a."입니다";
이렇게 조합해서 사용합니다.
하지만, {}를 이용하면 조합할 필요가 없습니다.
{}를 이용하면 변수를 독립적으로 묶어주게 됩니다.
즉,
echo "$a의 값은 ${a}입니다";
를 입력하게 되면, 실제로
$a의 값은 123입니다
가 출력됩니다.별도의 변수와 문자열로 보는 것이지요,
저 부분은 가변변수라고 해서
$a = "123"
echo ${$a}; // $123의 값 출력
echo ${$a."456"); // $123456의 값 출력
처럼 사용도 가능합니다.
이는 디비 쿼리문에서도 유용하게 사용될 수 있습니다.
많은 사람들이 아는걸 괜히 떠는건 아닌지 모르겠네요..^^;;
댓글 2
-
누리
2002.01.25 09:54
echo의 특성상 -
여린왕자
2002.01.26 08:28
계속해서 해주세요......초보를 위해서......쭉~
제목 | 글쓴이 | 날짜 |
---|---|---|
[iframe:아이프레임] 내용에 맞게 사이즈 조절하기 한번입력으로 끝.[다른방법:중복아닌듯] [45] | beMax | 2004.04.23 |
(For 초보)원클릭으로 여러프레임 컨트롤하기 [2] | 쉬드 | 2004.04.19 |
자기가 살아온 시간 구하기.. 데스크탑에 나타내기 [4] | kein23 | 2004.04.14 |
브라우저 버젼별 다른 페이지 보여주기 [2] | Kuldahar | 2004.04.13 |
바보같은 MS의 parseInt 버그. [4] | 김관석 | 2004.04.09 |
XP계열의 방문자 컴에서 ClearType 효과 사용여부 확인 [4] | YeUPy | 2004.04.04 |
팝업공지창 2개이상 띄우기(시간제한 가능) [8] | lemin | 2004.03.23 |
허접한 풀다운 메뉴 소스입니다. (유용한 팁 일지는 모르겠네요.)
[9]
![]() | tintintm | 2004.03.23 |
버튼 만들기 [1] | 旻天 | 2004.03.23 |
MS agent online object - Default Character 인 Merlin Action 추가 [2] | 꽃ちゃん | 2004.03.19 |
움직이는 타이틀바 [4] | 김동현 | 2004.03.18 |
웹브라우저 상태바가 밑으로 내려오는 소스 [5] | 프리서버 | 2004.03.16 |
브라우져(윈도우) 창의 크기(사이즈)를 조절하는 소스입니다 [5] | 나야 | 2004.03.15 |
프레임사이트에서 자식 프레임(URL)로 직접 치고 들어 올경우 다시 프레임 부모로 돌려보내는 소스 | 나야 | 2004.03.15 |
전체 include menu 만들기(롤오버 이미지 사용) [4] | Neoyoung | 2004.03.14 |
[초간단 자바스크립트!] 서브메뉴 만들기...~ [11] | ∑Ztxy | 2004.03.10 |
뉴스티커
[16]
![]() | zero | 2004.03.10 |
보안문서 만들기 [5] | 민우주 | 2004.03.07 |
팝업 창 띄우고 어미창 사라지게 하는 소스 [5] | piasol | 2004.03.06 |
방문자 OS보여주기 [5] | 구조반 | 2004.03.05 |