테스트 사이트 - 개발 중인 베타 버전입니다

전역변수의 값이 변경되지 않습니다. 채택완료

디스달나노 3년 전 조회 2,188

extend/user.config.php 파일에서

$g_test = "전역변수"; 라고 선언하였습니다.

 

a.php

global $g_test;

echo $g_test;

 

b.php

global $g_test;

$g_test = "값변경";

 

A페이지에 가면 "전역변수"라고 잘 출력이 됩니다.

B페이지에 갔다가 A페이지로 가면 "값변경"이라고 나와야되는데 그래도 "전역변수"라고 나옵니다.

한마디로 B페이지에서 값이 변경안된 것 같습니다.

전역변수가 수정이 안된 것 같은데 왜 그런지 모르겠습니다.

 

혹시 페이지 이동할 때 모든 페이지가 리로드 되어서 그런가요?

user.config.php, config, head.sub.php 등등이 페이지 이동마다 매번 리로드되면 자원 낭비인 것 같은데 궁금하네요.

 

sql에 접속해서 자주쓰는 내용은 user.config.php 전역변수에 저장해났다가 계속 쓰려고 했는데 

매번 페이지 들어갈 때마다 반복해서 sql에 접속해서 전역변수에 저장한다면 자원낭비같습니다.

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
플라이
3년 전

페이지가 변경시 변경된 값을 반영을 할수 없기에 해당 값을 세션이나 쿠키값을 저장해서 처리하시거나 변수를 전송해서 변경값이 인식되게끔 적용해 주셔야 합니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

3년 전

전역은 같은 페이지에서 다른 함수등에서 사용하는 방식이고 페이지 이동 후에도 쓰실려면 세션이나 쿠키를 이용하셔야 합니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

e
3년 전

페이지 로딩할때마다 다시 불러옵니다.

변수값을 저장하실려면 쿠키나 세션을 이용해야 합니다.

아래 함수 참조..

set_session() get_session()

set_cookie()

get_cookie()

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

디스달나노
3년 전
그누보드도 기본적으로 공통 config.php 도 매번 불러오는거죠?
e
eyekiss
3년 전
$config[] 배열로 불러옵니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인