서버 사이드 스크립트 언어 PHP는 C-like 문법을 채택하고 있습니다. 따라서 C 언어와 유사한 문법구조를 가지고 있는데, 이러한 이유로 PHP는 누구나 쉽게 접근하고 활용할 수 있습니다. 또한 소규모 웹 페이지 제작 시 쉽고 빠르다는 장점을 가지고 있어 세계적으로 널리 사용되고 있습니다. 이 블로그 PHP 홈페이지 만들기 프로젝트 연재 글에서는 PHP를 활용하여 홈페이지를 만들고, 회원을 관리하고, 게시판을 개발하는 등의 다양한 PHP 개발 방법들을 소개할 것입니다. 홈페이지 만들기 프로젝트의 첫 번째 글은 PHP를 간략하게 소개하고 Hello World! 페이지를 만드는 방법을 소개하는 글입니다.
PHP 공식 매뉴얼
http://php.net/manual/en/
1. PHP란 무엇인가?
PHP는 서버 사이드 스크립트 언어로 한국을 비롯한 전 세계 수많은 웹 시스템의 기반이 되는 웹프로그래밍 언어입니다. 비슷한 언어로는 ASP, JSP, ROR 등이 있습니다. C-like 문법을 채택하고 있기 때문에 소규모 웹 페이지 제작 시 쉽고 빠르다는 점에서 널리 사용되고 있습니다. 1995년 라스무스 러돌프에 의하여 처음 공개되었고, The PHP Group 이라는 단체에서 개발 및 관리를 하고 있습니다.
워드프레스나 미디어위키 등 많은 웹 어플리케이션이 PHP로 개발되어 있으며 의외로 웹 서핑을 해보면 사용되는 곳이 많습니다. 우리나라 한정으로 엄청난 점유율을 보이는 익스프레스 엔진과 그누보드 역시 PHP로 제작되었습니다. 워드프레스를 기반으로 하는 이 블로그 역시 PHP로 개발되었으며, 그만큼 널리 사용되기 때문에 우리나라 웹호스팅 서비스에서는 리눅스와 PHP를 기본구성으로 제공하는 경우가 많습니다.
2. PHP 설치
PHP를 사용하려면 웹 서버를 설치해야 합니다. 웹 서버는 아파치 + PHP + MySQL 구성이 가장 널리 사용되고 있으며 Windows나 Linux 등 거의 모든 운영체제에서 운용 가능한 웹 서버입니다. 이 연재 글에서도 위 구성을 바탕으로 개발이 진행될 것입니다. 웹 서버를 설치하는 방법은 다음 글을 참고해주시기 바랍니다.
2017-07-19 64비트 윈도우즈에 아파치 웹 서버와 PHP, MySQL 설치하기 by Walter Erzsamatory
위 글을 참고하여 Windows 또는 Linux에 APM 웹 서버를 성공적으로 설치하였다면 다음 단계로 진행합니다. 만약 설치하는 데 문제점이 발생한다면 댓글로 문의해주시기 바랍니다.
3. PHP 스크립트 실행 영역
다른 서버 사이드 스크립트 언어와 마찬가지로 PHP도 아래와 같은 스크립트 실행 영역에서만 스크립트가 실행됩니다.
<?php ... ?> <?php ...
마지막 ?> 부분은 생략할 수 있으며 실제로 스크립트를 작성할 때에는 이 방법이 가장 많이 사용됩니다. 따라서 이 블로그에서 진행되는 홈페이지 개발 프로젝트 연재 글에서도 이 방법을 사용하도록 하겠습니다.
설정파일을 수정하여 다음과 같이 PHP가 생략된 형태를 사용할 수도 있지만 이 방법은 오타가 발생했을 경우 다른 서버 사이드 스크립트 언어와 충돌을 일으킬 수 있으므로 사용하지 않는 것이 좋습니다.
<? ... ?>
4. PHP 문법 기본
PHP는 C 언어와 거의 동일한 문법을 가지고 있지만 특정한 부분에서 다음과 같은 특징이 있습니다. 아래는 가장 기본적인 특징이므로 PHP는 이외에도 다양한 특징을 다수 가지고 있습니다. 다른 특징들은 앞으로 연재 글을 진행하면서 필요할 때 설명하도록 하겠습니다.
- 함수와 변수를 정의할 때 데이터형을 정의하지 않는다.
- 변수는 $로 구분한다.
- 함수에 return 값은 없어도 무방하다.
- 문자열을 연결할 때에는 + 가 아닌 . 을 사용한다.
- C 언어와 동일하지만 모든 라인의 마지막은 세미콜론(;)으로 종료된다.
아래는 PHP 스크립트 예제입니다.
<?php // 이 부분은 주석입니다. // 필요한 외부 스크립트 불러옴 require_once 'db.php'; // 데이터베이스에 연결 $db = db_connect(); // 데이터 출력 echo 'Database Connection: '.$db->connection; // 데이터베이스 종료 $db->close();
5. Hello World!
위에서 PHP 기본 문법을 살펴보았으니 Hello World! 페이지를 만드는 것은 쉬울 것입니다. 아래 예제와 같이 PHP 스크립트를 작성하면 Hello World! 페이지가 완성됩니다.
<?php echo 'Hello World!';
C 언어와 다른 점은 PHP는 내장 함수를 사용할 때 별도의 라이브러리-헤더파일을 불러오지 않아도 된다는 점입니다. 따라서 위 예제에서와 같이 디스플레이 출력 함수인 echo()를 사용할 때에도 별도의 헤더파일은 필요하지 않으며 곧바로 함수를 호출하면 됩니다. C 언어와 차별화되는 PHP 만의 특징입니다. 개발자 입장에서는 편리한 특징이지만 모든 라이브러리를 미리 불러와야 하는 시스템 입장에서는 별로 도움이 되지 않는 특징일 수도 있습니다.
phpinfo() 함수를 사용하면 현재 PHP가 설치된 웹 서버의 정보를 확인할 수 있습니다. phpinfo() 함수를 사용하여 선택한 라이브러리가 제대로 실행되고 있는지, 데이터베이스가 설치되었는지 확인할 수 있습니다. phpinfo() 함수 사용법은 다음과 같습니다. 간단합니다.
<?php phpinfo();
6. 마무리
지금까지 PHP를 사용하여 Hello World! 페이지를 만드는 방법을 알아보았습니다. PHP는 C 언어와 비슷한 문법을 가지고 있지만 불편할 수 있는 여러 문법적 기능이 생략되어 있어 초보자도 쉽게 이해할 수 있는 서버 사이드 스크립트임에는 틀림이 없습니다. Hello World! 페이지를 만드는 데에는 단 한 줄의 스크립트만 있으면 됩니다. C 언어와 JAVA는 5줄이 필요합니다. 다음과 같이…
#include <stdio.h> int main() { printf("Hello World!"); return 0; }
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } }
이렇게 PHP는 다른 프로그래밍 언어보다는 상대적으로 쉬운 스크립트 언어입니다. 따라서 초보자도 쉽게 배울 수 있고, 앞으로 이 블로그에서 설명하는 내용도 쉽게 이해할 수 있을 것입니다. 다음 글에서는 초기화 및 데이터베이스 연결에 대하여 알아보도록 하겠습니다.
타이틀 이미지: yves Tennevin, the proof that Dcrochet was not here!, Flickr. CC BY-SA 2.0.