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, XMLReader 및 XMLWriter 지원을 추가하여 기능 세트를 확장합니다.
그리고 알파벳순과 범주별로 분류되는 다른 많은 흥미로운 확장이 있습니다. 그리고 » XDebug와 같이 PHP 매뉴얼 자체에 문서화되거나 문서화되지 않을 수 있는 추가 PECL 확장이 있습니다.
보시다시피 이 페이지는 PHP가 제공할 수 있는 모든 기능과 이점을 나열하기에 충분하지 않습니다. PHP 설치에 대한 섹션을 읽고 여기에 언급된 확장에 대한 설명은 함수 참조 부분을 참조하십시오.