Forum und email

PHP로 할 수 있는 것들

PHP로 무엇이든지 할 수 있습니다. PHP는 서버측 스크립팅에 중점을 두고 있어, 다른 종류의 CGI 프로그램이 하는 모든 것을 할 수 있습니다. 예를 들면, 폼 데이터를 수집하거나, 동적인 페이지 콘텐츠를 만들거나 쿠키를 보내고 받을 수 있습니다. 그리고 PHP는 더 많은 것들을 할 수 있습니다.

PHP 스크립트가 사용되는 세가지 중점적인 영역이 있습니다.

  • 서버측 스크립팅. 이것은 PHP에서 가장 오래되고, 중점적인 영역입니다. 이 일을 위해서는 세가지가 필요합니다. PHP 파서 (CGI나 서버 모듈), 웹서버, 그리고 웹 브라우저. PHP가 설치된 웹서버를 실행시킬 필요가 있습니다. 웹 브라우저로 서버에 있는 PHP 페이지를 보는 것으로 PHP 프로그램 출력에 접근하게 됩니다. 단순히 PHP 프로그래밍을 경험해보고 싶다면, 당신의 집에 있는 머신으로도 가능합니다. 더 많은 정보는 설치 안내 섹션을 참고하십시오.
  • 커맨드 라인 스크립팅. 어떠한 서버나 브라우저 없이 PHP 스크립트를 실행하게 할 수 있습니다. 이 때에는 PHP 파서만 있으면 됩니다. 이런 사용법은 스크립트를 cron(*nix나 Linux에서)이나 작업 관리자(Windows에서)를 사용해 실행하는 것과 동일합니다. 이런 스크립트들은 간단한 텍스트 처리 작업에 사용될 수도 있습니다. 더 많은 정보를 위해서는 PHP의 커맨드 라인 사용법 섹션을 참고하십시오.
  • 데스크톱 어플리케이션의 작성. PHP는 그래픽 유저 인터페이스를 가지는 데스크탑 어플리케이션을 작성하기에 최적의 언어는 아니지만, PHP를 잘 이해하고 있고, 고급의 PHP 기능을 클라이언트측 어플리케이션에 사용하고 싶다면, 그러한 프로그램을 위해 PHP-GTK를 사용할 수 있습니다. 또한, 이러한 방법으로 플래폼에 상관 없이 작동하는 어플리케이션을 작성할 수도 있습니다. PHP-GTK는 PHP의 확장으로, 배포판에는 포함되어 있지 않습니다. PHP-GTK에 흥미가 있다면, » PHP-GTK 웹사이트를 방문해 보십시오.

PHP는 리눅스, 많은 유닉스 계열 (HP-UX, Solaris와 OpenBSD를 포함), Microsoft Windows, 맥 OS X, RISC OS 등과 같은 모든 유명한 OS에서 사용할 수 있습니다. 또한, PHP는 오늘날의 대부분의 웹 서버를 지원합니다. 이것에는 아파치, Microsoft Internet Information Server, Personal Web Server, Netscape and iPlanet servers, Oreilly, Website Pro server, Caudium, Xitami, OmniHTTPd, 그 외의 많은 서버들을 포함합니다. 유명한 서버에 대해서는 PHP 모듈이 있으며, 다른 것에 대해서는 CGI 표준을 지원한다면, PHP는 CGI 프로세서로 동작할 수 있습니다.

그러므로 PHP라면, OS와 웹서버를 선택하는 것에서 자유로워 질 수 있습니다. 추가로, 함수 지향형이나 객체 지향형, 또는 그 둘을 섞은 형태로 프로그램을 할 수 있습니다. 비록 PHP 4는 모든 표준 OOP 기능을 포함하고 있지 않지만, 많은 코드 라이브러리와 커다란 애플리케이션들(PEAR 라이브러리를 포함하여)이 OOP 코드만을 이용하여 작성되고 있습니다. PHP 5는 PHP 4에서의 객체 관련 취약점을 보완하고, 완전한 객체 모델을 지원하고 있습니다.

PHP는 HTML을 출력하는 것에만 제한되지 않습니다. PHP의 능력은 이미지, PDF 파일, 심지어 플래쉬 무비(libswf와 Ming를 사용하여)까지 만들어서 출력할 수 있습니다. 또한 XHTML이나 다른 종류의 XML 파일과 같은 어떠한 텍스트 파일이라도 쉽게 출력할 수 있습니다. PHP로 출력을 하는 대신, 자동적으로 만들어진 파일들을 파일 시스템에 저장하여 동적 컨텐츠에 대한 서버측 캐쉬를 구현할 수도 있습니다.

PHP의 가장 강력하고 인상적인 기능 중 하나는 넓은 범위의 데이터베이스에 대한 지원입니다. 데이터베이스를 이용하는 웹 페이지를 작성하는것은 매우 간단합니다. 현재 다음과 같은 데이터베이스를 지원하고 있습니다:

  • Adabas D
  • dBase
  • Empress
  • FilePro (read-only)
  • Hyperwave
  • IBM DB2
  • Informix
  • Ingres
  • InterBase
  • FrontBase
  • mSQL
  • Direct MS-SQL
  • MySQL
  • ODBC