PHP [핵심정리] - 1
저는 Bitnami를 사용해서 php를 작성할 예정입니다. php는 이미 설치했지만 php가 제대로 설치되었는지 확인하기 위해 임의로 test.php 파일을 만들어 확인하겠습니다. test.php 파일은 apache2 > htdocs 폴더에 저장해야 합니다. 왜냐하면 브라우저가 웹서버(Bitnami로 설치한)에 어떠한 정보를 요청하면 웹서버는 htdocs 폴더에서 그 정보를 찾기때문입니다.


음.. 잘 나오는 걸 보니 정상적으로 설치되었네요.
1. PHP의 원리

사용자가 요청한 파일의 확장자가 .html일 경우에 웹서버는 파일을 그대로 읽어서 그대로 전송합니다. 즉, 한번 index.html이라는 웹 페이지를 만들었다면 그것은 언제나 같은 정보를 보여줍니다.

사용자가 요청한 파일의 확장자가 .php가 되면 웹서버는 자신이 그 파일을 처리할 수 없다는 걸 알고, php에게 파일을 위임합니다. 그럼 php는 index.php라는 파일을 열어보겠죠?

3줄까지는 일반적인 html문서 형식과 동일합니다. 그래서 php는 이 부분을 건들지 않습니다. 그런데 php가 시작된다는 걸 알려주는 약속 <?php가 나오면 php는 이제부터 php언어의 문법이 나오겠다는 판단하에 그 다음에 나오는 코드들을 php 문법에 따라 해석합니다.
위 코드 중 echo date('Y-m-d H:i:s');는 년,월,일,시,분,초 형식(여기서 분이 minute이지만 month(월)와 겹치므로 그 다음 머리글자인 i를 사용합니다.)에 따라 현재 시간(data)를 출력(echo)하라는 의미입니다. 그럼 php는 이 코드들을 다음과 같이 수정(해석)합니다.

그 후 php가 끝나는 코드 ?>가 나오면 이후 코드들은 그대로 둡니다. 그래서 만들어진 결과를 웹서버에게 보내면 웹서버는 그걸 다시 웹 브라우저에게 보냅니다. 이 때 웹 브라우저는 php코드가 없는 순수한 html로만 이루어진 결과를 받기 때문에 php의 여부와는 상관없이 html을 화면에 표시합니다.
기본적으로 html은 한번 파일이 생성되면 언제나 같은 결과를 출력하지만 php는 프로그래밍적으로 웹페이지를 생산할 수 있어 새로고침할 때마다 달라지는 웹페이지를 동적으로 생성할 수 있습니다.
결론 - Html은 정적이고 PHP는 동적이다.