PHP는 무엇을 할 수 있습니까?

PHP는 무엇을 할 수 있습니까?

PHP로 무엇이든지 할 수 있습니다. PHP는 주로 서버 측 스크립팅에 중점을 두고 있으므로 양식 데이터 수집, 동적 페이지 콘텐츠 생성 또는 쿠키 송수신과 같은 다른 CGI 프로그램이 할 수 있는 모든 작업을 수행할 수 있습니다.

PHP 스크립트가 사용되는 세가지 주요 영역이 있습니다.

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

PHP는 리눅스, 많은 유닉스 계열 (HP-UX, Solaris와 OpenBSD를 포함), 마이크로소프트 윈도우, 맥 OS X, RISC OS 등과 같은 모든 주요 운영 체제에서 사용할 수 있습니다. 또한, PHP는 오늘날의 대부분의 웹 서버를 지원합니다. 여기에는 Apache, IIS 등이 포함됩니다. 그리고 여기에는 lighttpd 및 nginx와 같이 FastCGI PHP 바이너리를 사용할 수 있는 모든 웹 서버가 포함됩니다. PHP는 모듈 또는 CGI 프로세서로 작동합니다.

따라서 PHP를 사용하면 운영 체제와 웹 서버를 자유롭게 선택할 수 있습니다. 또한 절차적 프로그래밍이나 객체 지향 프로그래밍(OOP) 또는 이 둘을 혼합하여 사용할 수도 있습니다.

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

PHP의 가장 강력하고 중요한 기능 중 하나는 광범위한 데이터베이스를 지원한다는 것입니다. 데이터베이스 사용 웹 페이지를 작성하는 것은 데이터베이스 특정 확장(예: mysql용) 중 하나를 사용하거나 PDO와 같은 추상화 계층을 사용하거나 ODBC 확장을 통해 개방형 데이터베이스 연결 표준을 지원하는 데이터베이스에 연결하는 것을 사용하여 매우 간단합니다. 다른 데이터베이스는 CouchDB와 같은 cURL 또는 소켓을 사용할 수 있습니다.

또한 PHP는 LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (윈도우에서), 그리고 셀 수 없는 여러가지 프로토콜들을 이용해서 다른 서비스와 연계할 수 있도록 지원합니다. 또한 비어있는 네트워크 소켓을 열수도 있기에 어떤 프로토콜과도 연계해서 실행할 수 있습니다. PHP는 WDDX complex data exchange between virtually all Web programming languages를 지원합니다. 이를 통한 연계로, PHP는 자바 객체를 그대로 PHP 객체로 옮겨서 이용할 수 있습니다.

PHP에는 Perl 호환 정규식(PCRE)과 XML 문서를 구문 분석하고 액세스하기 위한 많은 확장 및 도구를 포함하는 유용한 텍스트 처리 기능이 있습니다. PHP는 libxml2의 견고한 기반에서 모든 XML 확장을 표준화하고 SimpleXML, XMLReaderXMLWriter 지원을 추가하여 기능 세트를 확장합니다.

그리고 알파벳순범주별로 분류되는 다른 많은 흥미로운 확장이 있습니다. 그리고 » XDebug와 같이 PHP 매뉴얼 자체에 문서화되거나 문서화되지 않을 수 있는 추가 PECL 확장이 있습니다.

보시다시피 이 페이지는 PHP가 제공할 수 있는 모든 기능과 이점을 나열하기에 충분하지 않습니다. PHP 설치에 대한 섹션을 읽고 여기에 언급된 확장에 대한 설명은 함수 참조 부분을 참조하십시오.