묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
include()와 require()에 대해서 추가질문..
2004.04.09 10:09
이전 페이지에서 include()와 require()의 차이점에 대해서 한 분이 답변 주셨는데요.
근데 잘 이해가 안되거든요..(-_-;)
----------------------------------------------------------------------------------
리콰이어는 선처리기처럼 문법파싱이전에 해당 파일의 소스를 포함시키는 것이고
인클루드는 스크립트의 실행과정에서 포함시켜서 실행시키는 방식이라고 생각하시면 됩니다.
그래서 loop문 or if문에서 작동하는 것은 include이고 require는 안되죠.
-----------------------------------------------------------------------------------
예를 들어, 아래와 같은 예문에서는 require를 써도 이상없이 작동하거든요..
간단한 예문을 곁들여 설명해 주시면 정말 감사하겠습니다.
- a.php -
<? echo "This is a statement."; ?>
- b.php -
$cnt = 0;
while($cnt < 10 )
{
require("a.php");
$cnt++;
}
// "This is a statement." 라는 문장이 10번 출력됨..
근데 잘 이해가 안되거든요..(-_-;)
----------------------------------------------------------------------------------
리콰이어는 선처리기처럼 문법파싱이전에 해당 파일의 소스를 포함시키는 것이고
인클루드는 스크립트의 실행과정에서 포함시켜서 실행시키는 방식이라고 생각하시면 됩니다.
그래서 loop문 or if문에서 작동하는 것은 include이고 require는 안되죠.
-----------------------------------------------------------------------------------
예를 들어, 아래와 같은 예문에서는 require를 써도 이상없이 작동하거든요..
간단한 예문을 곁들여 설명해 주시면 정말 감사하겠습니다.
- a.php -
<? echo "This is a statement."; ?>
- b.php -
$cnt = 0;
while($cnt < 10 )
{
require("a.php");
$cnt++;
}
// "This is a statement." 라는 문장이 10번 출력됨..
그래서 저렇게 해 놓으면 실제로는
- b.php -
$cnt = 0;
while($cnt < 10 )
{
<? echo "This is a statement."; ?>
$cnt++;
}
이렇게 되는거죠
그러나 include()를 사용할 경우 그 줄이 실행될때 값을 가져와서
그것만 실행하는것입니다.
그래서 위 소스로는 두 구문을 구분하기가 힘들것 같은데요