PHP Intro
PHP(Hypertext Preprocessor)란?
- 서버 사이트 스크립트 언어 (인터프리터 언어에 속함)
- 동적 웹 페이지를 쉽고 빠르게 만들기 위해 고안됨
- HTML 코드 안에 PHP 코드를 작성하면 웹 서버가 해당 코드를 해석하여 웹 페이지를 생성
동적 웹 페이지(dynamic web page): 서버가 사용자의 요청대로 데이터를 가공하여 생성하는 웹 페이지
PHP의 특징
장점
- 빠른 로딩 속도
- 오픈 소스 프로젝트
- 플랫폼 독립성
- SQL 인젝션, data manipulation, forgery로부터 웹 앱을 보호하는 기능과 도구가 있다.
단점
- 복잡한 사이트를 만드는 데에는 효율적이지 않다.
- 오픈 소스 프로젝트의 특성으로 보안 취약점이 악용될 수 있다.
- 보안적인 부분에서
JSP
ASP.NET
이 더 좋은 선택이 될 수 있다.
버전별 주요 특징
- PHP 5: 객체 지향 프로그래밍의 개념이 많이 추가
- PHP 5.3: 네임스페이스(namespaces) 추가
- PHP 5.4: 단일 상속의 한계를 없앤 트레이트(traits) 개념이 추가
- PHP 7: 2배 이상의 속도 향상 및 익명 클래스(anonymous classes)가 추가
웹 프로그래밍 언어 비교
언어 | 운영체제 | 웹 서버 | 제조사 | 속도 | 이식성 |
---|---|---|---|---|---|
PHP | 리눅스, 윈도우 | Apache 등 | 오픈 소스 | 빠름 | 보통 |
JSP | 리눅스, 윈도우 | Tomcat, Jeus 등 | Oracle | 느림 | 좋음 |
ASP.NET | 윈도우 | IIS | Microsoft | 보통 | 나쁨 |
동작 원리
- 클라이언트가 브라우저를 열고 웹 페이지 요청한다.
- PHP 소프트웨어가 설치된 서버에서 요청에 맞는 .php파일을 찾는다.
- 파일은 PHP 인터프리터로 전송되고, 인터프리터는 데이터베이스에서 원하는 데이터를 검색한다.
- 원하는 데이터를 HTML파일 형식으로 반환한다.
- 웹 서버가 HTML파일을 받는다.
- 웹 서버가 웹 페이지를 브라우저로 전송한다.
참고
What Is PHP? How It Boosts Web Development
https://tcpschool.com/php/intro
수정이 필요한 부분은 댓글로 피드백 부탁드립니다!
댓글남기기