동하아빠

함수에서 다른 파일을 include 할 때 전역 변수 인식이 안되는 현상

· 2012-11-14 (수) 15:42:35 · 3376 · 2
다음의 두 파일이 있습니다.

a.php
[code]
<?
a();

function a()
{
    include_once "b.php";
}
?>
[/code]

b.php
[code]
<?
$var = "this is b";

b();

function b()
{
global $var;
echo "b() : $var <br/>";
}

?>
[/code]

이렇게 했을 때 예상하는 결과는... "b() : this is b" 인데..
"b() : " 라고만 나오네요..

함수안에서 include 했을 때 include 된 파일에서 선언한 변수가 global 키워드로 접근이 안되네요.
$GLOBALS['var'] 를 보아도 변수는 있는데 값이 할당이 안되어있는데..

왜 이럴까요? 
|

댓글 2개

2012-11-14 (수) 16:03:50
$var 라는 변수는 전역변수가 아닙니다.
a 함수에 속한 지역변수입니다.
즉 a 함수에 속한 $var 변수는 지역변수이므로
b 함수에서 global $var ; 라고 하셔도 전역변수가 없기 때문에 값이 비어있습니다.
역시..;; 그렇다면 저렇게 b파일에 변수를 선언해 놓으면.. 함수에서 그대로 가져다 쓸 방도가 없겠군요.. a파일은 제가 만들려는 프로그램의 함수이고 b파일은 어떤 파일이 될지 모르는 상황이라 음..
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
16-07-13 조회 2,066
16-07-12 조회 2,202
16-07-12 조회 2,222
16-07-11 조회 2,103
16-06-05 조회 2,656
16-06-03 조회 2,757
16-05-26 조회 2,716
15-09-22 조회 4,843
15-06-10 조회 4,638
14-10-25 조회 6,076
14-10-22 조회 8,817
14-09-21 조회 5,615
14-09-16 조회 4,910
14-08-22 조회 1만
14-08-13 조회 5,742
14-08-12 조회 5,285
14-08-12 조회 6,150
14-08-11 조회 6,675
14-06-12 조회 6,032
14-06-11 조회 4,886
14-05-09 조회 5,259
14-05-09 조회 6,226
14-05-09 조회 6,236
14-05-08 조회 5,569
14-04-17 조회 4,544
14-04-16 조회 4,421
14-04-15 조회 4,391
14-04-15 조회 4,424
14-04-15 조회 4,071
14-04-14 조회 4,122
14-04-14 조회 4,085
14-04-14 조회 4,504
14-04-14 조회 4,511
14-04-14 조회 4,556
14-04-13 조회 4,393
14-04-12 조회 4,099
14-04-12 조회 4,176
14-04-12 조회 4,263
14-04-11 조회 4,775
14-04-10 조회 4,455
14-04-10 조회 4,480
14-04-09 조회 4,756
14-04-09 조회 5,082
14-04-08 조회 6,696
13-10-30 조회 7,507
13-07-11 조회 4,991
13-03-28 조회 1.1만
13-02-27 조회 6,568
13-02-14 조회 5,404
13-01-10 조회 4,399
12-12-31 조회 4,928
12-12-20 조회 6,029
12-12-12 조회 5,165
12-12-07 조회 4,342
12-11-28 조회 4,661
12-11-22 조회 5,125
12-11-12 조회 5,449
12-09-22 조회 4,425
12-09-18 조회 4,611