티스토리 뷰

PHP

PHP란?? PHP의 개요

babydeveloper 2022. 4. 14. 08:58

PHP란? 서버 측의 동작하는 기술 또는 언어 입니다 서버관계부터 차근차근 알아보도록 하겠습니다

 

웹 시스템(web system)

우리가 매일 사용하고 있는 인터넷을 구성하는 시스템을 웹 시스템(web system)이라고 합니다.

이러한 웹 시스템은 다음 그림과 같이 클라이언트(client)와 서버(server)로 구성됩니다.

 

클라이언트(client)는 어떠한 요청을 하고 서버(server)는 클라이언트의 요청에 대한 응답 혹은 제공을 하는 구조입니다.

 

즉 구글, 다음 등등의 접속하는 유저들은 클라이언트이며, 서버는 구글의 컴퓨터, 다음 컴퓨터들이 브라우저를 통한 응답 혹은 정보를 제공하기 때문에 구글의 컴퓨터, 다음 컴퓨터가 서버가 되는 것입니다

 

클라이언트 사이드와 서버 사이드

웹 시스템에서의 처리는 클라이언트와 서버 중 어느 쪽에서 수행되는 작업인가에 따라 다음과 같이 구분할 수 있습니다.

 

1. 클라이언트 사이드(client-side)

2. 서버 사이드(server-side)

 

클라이언트 사이드(client-side)란 클라이언트 측에서 수행하는 처리를 의미합니다.

웹 시스템에서 브라우저는 서버에서 수신한 HTML 문서를 해석하여 여러분의 화면에 표시해 줍니다.

이러한 클라이언트 사이드에서 자주 사용하는 스크립트 언어에는 자바스크립트(JavaScript)가 있습니다.

 

서버 사이드(server-side)란 서버 측에서 수행하는 처리를 의미합니다.

브라우저에서 요청한 HTML 문서에 서버 사이드 스크립트 언어의 코드가 포함되어 있으면, 서버는 이 부분을 자신이 처리하고 그 결과를 브라우저에 보내 줍니다.

이러한 서버 사이드에서 자주 사용하는 스크립트 언어가 바로 PHP입니다.

 

PHP의 역사

PHP는 1995년에 PHP 1(Personal Home Page Tools) 버전이 라스무스 러도프(Rasmus Lerdorf)에 의해 만들어졌습니다.

이후 1997년에는 PHP/FI 2(Personal Home Page / Forms Interpreter)이 공개됩니다.

1998년에 이르러 오늘날의 PHP와 매우 유사한 PHP 3이 공개됩니다.

2000년에는 Zend 엔진을 도입한 PHP 4가 공개되며, 2004년에는 객체 지향 개념이 강화된 PHP 5가 발표됩니다.

 

하지만 2005년부터 10년간 개발 중이던 PHP 6 프로젝트가 결국 2010년에 취소되면서 위기를 맞습니다.

그 후 근본적인 개선을 통해 기존 PHP 5와의 호환성을 최대한 유지하면서도 기존보다 2배 이상의 속도 향상을 이끌어 낸 PHP 7이 2015년 12월에 발표되었습니다.

현재는 PHP 7.1 후보안1이 2016년 9월에 발표되었으며, 2016년 12월에 드디어 PHP 7.1 정식버전이 발표되었습니다.

 

PHP(PHP: Hypertext Preprocessor)

PHP는 C언어를 기반으로 만들어진 서버 측에서 실행되는 서버 사이드 스크립트 언어입니다.

 

PHP로 작성된 코드를 HTML 코드 안에 추가하면, 웹 서버는 해당 코드를 해석하여 자동으로 HTML 문서를 생성합니다.

따라서 PHP를 사용하면 동적으로 빠르게 HTML 문서를 만들 수 있습니다.

 

 

 

PHP 특징

 

1. 웹서버에서 해석되는 스크립트언어입니다

 

2. 데이터베이스 연동을 편리하게 할수 있습니다

MySQL, mSQL, Oracle, Sybase 및 윈도우 ODBC 등 여러 DB를 편리하게 연동할 수 있습니다

 

3. 거의 모든 운영 체제에 구현이가능합니다

 

4. 코드 작성이 쉽고 문법이 간단합니다

   PHP 문법은 C/C++ 언어의 문법과 비슷하여 클래스를 지원하여 효율적인 코딩이 가능하고, 스크립트 언어이기 때문에 HTML문서 내부에 입력하여 실행 할 수 있는 편리한 언어입니다

 

5. 처리속도가 빠릅니다

인터프리터 방식을 채택하여 일반적인 asp나 perl 언어보다 처리속도가 월등히 빠릅니다

 

1. 거의 모든 OS에서 실행되며, 수십 가지의 DBMS 연결을 지원합니다

 

2. 속도가 매우 빠릅니다 L(리눅스) + A(Apache)  + P(PHP) + M(Mysql)은 환상적인 속도를 제공합니다

 

3. 파일업로드, 메일 전송등의 기능은 자체적으로 지원하며(ASP나 JSP 처럼 컴포넌트나 클래스 파일을 따로 설치하지 않아도 됩니다)

 

4. 문법이 C언어를 따르므로 간결하고 ASP나 JSP에 비해 코드의 양을 많이 줄여 줄수 있다.

 

5. DB 연결에 함수를 사용하게 때문에 직관적이고 간결합니다

 

6. 클래스 생성 및 상속이 가능하여 코드를 모듈화 시키기에 용이합니다

 

7. 이미지를 동적으로 생성할 수 있습니다

 

8. XML, ZIP, PDF, 암호화 등에 관련된 다양한 함수를 지원합니다.

 

9. JSP 처럼 한글 처리를 걱정하지 않아도 됩니다.

 

 

반응형

'PHP' 카테고리의 다른 글

PHP 상수  (0) 2022.04.15
PHP 변수의 종류  (0) 2022.04.15
PHP 변수  (0) 2022.04.14
PHP 문법  (0) 2022.04.14
PHP 동작원리!  (0) 2022.04.14
댓글
© 2022 babydevelop