기초공사 (html,css,javascript)

html-include 본문

카테고리 없음

html-include

에스프레소라떼 2023. 7. 24. 14:29

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=galma73&logNo=80197414418

 

답변 중

 

스크립트로 입히는것과 php 인클루드 사용하는것중에 어떤 차이점이 있나요?

-

차이점이 있습니다...

브라우져에서 html 파일을 서버로 요청하게 되면, 웹서버에서는 저장되어 있는 html 파일을 읽어들여서 Response를 해줍니다.
즉, html 은 한 요청에 하나의 물리적인 파일을 Response해주게 됩니다.

그런데, php같은 경우에는 일반적인 html 파일처럼 파일을 읽어들여서 바로 Response해주지 않습니다. 파일을 읽어들인 다음에 php 문장에 해당하는 부분을 찾아서 번역을 한 다음에 하나의 결과물로 Response해주는 것입니다.

위 차이점을 인클루드로 생각해보면 다음과 같습니다.

1. html 파일은 근본적으로 인클루드를 할수가 없습니다.
인클루드할수 있는 문법도 없습니다.
Ajax로 특정 영역에 다른 페이지를 불러들이는 기능.. 정도가 전부입니다..(제가 예로 든 것도 Ajax방식을 활용한 것입니다.) iframe도 a.html 안에 b.html 을 포함시키는 것도 a.html 만 요청하는 것이 아니라 b.html 도 요청하는.. 즉, 클라이언트 입장에서 두번의 요청을 하는 것입니다. 그리고, 이건 인클루드라기보다는 별도의 페이지인 것이죠...

2. php와 같은 대부분의 웹서버프로그래밍 언어는 인클루드 문법을 제공해줍니다.
이건 웹서버가 php를 번역할때 지정된 페이지를 번역단계에서 붙여넣는 것입니다... 브라우져 입장에서는 a.php만 요청했을 뿐이지, a.php안에 있는 header.php를 요청한게 아닌 것입니다.

음.. 설명이 잘되었는지 모르겠는데... 아무튼 위와 같습니다...

html은 파일그대로 읽어들여서 Response ( 파일내용을 번역하는 단계가 없습니다. )

php 파일은 파일을 읽어들인 다음에, php문장을 파싱하는 단계를 거침. 이때 php문법에서 include하는 것을 만나면 해당되는 파일을 다시 읽어들여서 해당되는 위치에 replace시킴..