|
|
|
16년 전
|
조회 1,528
|
|
|
|
16년 전
|
조회 1,573
|
|
|
|
16년 전
|
조회 1,545
|
|
|
|
16년 전
|
조회 1,106
|
|
|
|
16년 전
|
조회 997
|
|
|
|
16년 전
|
조회 1,565
|
|
|
|
16년 전
|
조회 974
|
|
|
|
16년 전
|
조회 1,043
|
|
|
|
16년 전
|
조회 783
|
|
|
|
16년 전
|
조회 2,385
|
|
|
|
16년 전
|
조회 825
|
|
|
|
16년 전
|
조회 962
|
|
|
|
16년 전
|
조회 932
|
|
|
|
16년 전
|
조회 982
|
|
|
|
16년 전
|
조회 2,713
|
|
|
|
16년 전
|
조회 990
|
|
|
|
16년 전
|
조회 1,289
|
|
|
|
16년 전
|
조회 1,244
|
|
|
|
16년 전
|
조회 1,212
|
|
|
|
16년 전
|
조회 848
|
댓글 5개
가능하면 $_POST 변수를 사용하는 게 좋답니다.
&$_POST 의 &는 주소를 지칭합니다.
예를 들어
$val=$_POST; // $_POST의 값을 $val 변수에 할당한다. 즉 값을 복사.
$val=&$_POST; // $_POST의 값이 가리키는 주소값을 $val 변수에 할당한다. 즉 값을 직접 가리킴.
$var = &$post;
echo $var;
$post = "post";
$var = $post;
echo $var;
위 두가지의 경우처럼 하면 뭐가 다른건가요?
몰 가르키고 할당하겠는건 알겠는데 뭐가 틀린지 실질적으로 모르겠어요 ^^;
좀더 자세한 예제 있으면 부탁드립니다.
$post = "post";
$var = &$post;
================
post와 var는 "post" 라는 문자열 값을 가지게 됩니다.
그런데 var에 "var"라는 문자열 값을 저장하면 post는 어떻게 될까요?
============
$post = "post";
$var = &$post;
$var = "var";
============
var와 post 둘 다 "var" 라는 문자열 값을 가지게 됩니다.
var와 post 변수는 같은 주소를 가리키기 때문입니다.
가끔 값이 아니라 객체(또는 배열) 그 자체를 넘기고, 수정해야 하는 경우가 있습니다.
이런 경우 call by refrence 형태로 넘겨야 하는데, & 를 쓰게 됩니다. 주소값을 넘기는거죠.
(이런 경우란 리턴값이 두개 이상인 경우입니다. php 함수에서 리턴값은 하나만 가능하죠. 두개 이상 수정해야 하는 경우에 쓰게 됩니다. 또는 변수의 사이즈가 큰 경우에 call by value 형태는 메모리를 낭비하게 되는데 이때도 사용합니다. )
$HTTP_POST_VARS 는 php.ini 에서 register_globar = on 한 경우에 활성화 되는 내장 변수입니다.
(쓰지 않는게 좋습니다. 그냥 $_POST 를 참조하는게 현명합니다.)