PHP

0

PHP(PHP : Hypertext Preprocessor)는 프로그래밍 언어의 일종이다.

원래는 동적 웹 페이지(Web page)를 만들기 위해 설계되었으며, 이를 구현하기 위해 PHP로 작성된 코드를

HTML 소스 문서 안에 넣으면 PHP 처리 기능이 있는 웹 서버에서 해당 코드를 인식하여 작성자가 원하는 웹페이지를 생성한다.

PHP는 명령 줄 인터페이스 방식의 자체 인터프리터를 제공하여 이를 통해 범용 프로그래밍 언어로도 사용할 수 있으며, 그래픽 애플리케이션을 제작할 수 있다.

PHP는 서버(Server) 쪽에서 구동되는 언어이다. Server side script

자바스크립트, HTML이 클라이언트인 웹 브라우저(Web Browser) 에서 구동되는 것과는 구분되는 점이다.

사용자가 업로드한 파일을 서버에 저장하거나, 사용자가 입력한 데이터를 받아서

데이터베이스나 파일에 저장하고, 저장된 정보를 불러와서 HTML을 생성해서 웹브라우저 전송한다.

많은 서버 측 으포느 소스 소프트웨어는 PHP로 구현되어 있다.

PHP를 바탕으로 하는 프로그램 중 대표적인 예로, 블로깅 도구 워드프레스,

위키백과를 구동시키는 미디어 위키를 들 수 있다.

PHP 특징

PHP는 텍스트, 특히 HTML의 처리에 강점을 가지고 있다.

또한 URL의 파싱이나 폼 처리, 정규 표현식이 강하다.

다양한 데이터베이스를 지원하므로, 데이터베이스와 사용자 간의 다리 역할도 수행한다.

PHP는 PHP 사용 허가서의 규정을 따라 릴리즈된 자유 소프트웨어이다.

PHP는 서버 측에서 실행되는 프로그래밍 언어로 HTML을 프로그래밍적으로 생성해주고,

데이터베이스와 상호작용 하면서 데이터를 저장하고, 표현합니다.
PHP는 웹을 위해서 만들어졌고, 지금도 웹을 위해서 발전하고 있는 웹을 위한 언어입니다.

웹프로그래밍을 위한 높은 생산성을 제공하는 언어입니다.

특히 서버에 직접 설치해서 운영할 수 있는 설치형 웹 에플리케이션

(제로보드,텍스트큐브,워드프래스,PHPBB등)의 과반이 PHP로 만들어졌습니다.

따라서 PHP를 배워두시면 이러한 솔루션들에 대한 운영, 문제해결 능력이 향상됩니다.

PHP 장점

  • 모든 운영 체제에서 구현 가능하다. (유닉스 계열, 리눅스 계열, 윈도우 환경 구현)

  • 웹에 최적화된 언어, 웹 서버에서 해석되는 스크립트 언어

  • 웹 개발에 필요한 수많은 로직(Logic) 들이 함수의 형태로 미리 제공됨

  • 코드 작성이 쉽고 문법이 간단하다 -> C/C++ 언어의 문법과 비슷

  • 거의 모든 데이터베이스(Database)를 지원 (MySQL, mSQL, Oracle, Sybase 및 윈도우 ODBC)

  • 가장 많은 오픈 소프트웨어가 PHP로 만들어짐

    빠른 생산성, 저렴한 유지비용

  • 프로그래밍 속도를 높여주며, 매우 직관적이다.

  • 객체를 지향하는 부분도 추가되어 복잡한 프로그래밍도 관리하다.

  • PHP는 무료 라이선스가 가능한 리눅스에 또 데이터베이스로 Mysql이 설치되는 경우 저렴하다.

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

  2. 속도가 매우 빠르다. 리눅스 + 아파치 + PHP + MySQL은 환상적인 속도를 제공한다.

  3. 클래스 생성 및 상속이 가능하므로 코드를 모듈화시키기가 용이하다.

  4. 파일 업로드, 메일 전송 등의 기능은 자체적으로 지원한다.

  5. DB 연결에 함수를 사용하므로 직관적이고 간결하다.

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

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

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

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

Server Side Script

웹호스팅, 공유 호스팅

대형 통신업체나 전문회사가 자신의 인터넷 서버를 고객에게 할당해주고, 고객이 직접 운영하는 것과

같은 효과를 제공하는 서비스이다.

고객들에게 도메인 등록을 대행하고, 전자 우편 계정을 발급하며 FTP계정과 텔넷(telnet) 계정,

그리고 각종 데이터베이스를 제공한다. 또한 게시판과 방명록, 웹 프로그램도 지원한다.

출처:

정출

profile
🇰🇷🇺🇸 #Back-End Engineer

0개의 댓글