<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1387208918241112&ev=PageView&noscript=1"/>

뉴스센터 목록으로 돌아가기

‘PHP’개발이란? 5분만에 쉽게 알아보기

위시켓 | 2020.07.15.



안녕하세요? 위시켓입니다.

여러분은 PHP가 무엇인지 알고 계시나요? 아마 개발과 관련된 산업에 종사하고 있지 않더라면, 이 개발 언어가 생소할 수 있는데요. PHP는 쉽게 설치할 수 있고, 배우기도 쉬워서 많은 사랑을 받고 있습니다. 이번 시간 위시켓은, 자주 쓰이지만 더 자세하게 알아볼 필요가 있는, 'PHP'에 대해 준비했습니다. 빠른 생산성과 저렴한 운영비용을 자랑하는, PHP에 대해 알아보세요.

*위시켓은 2019년 시밀러 웹 방문자수 기준, 국내 1위 IT 아웃소싱 플랫폼입니다. 현재 7만 9천 개의 개발업체와 개발자들이 활동하고 있으며, 원하는 개발 프로젝트를 무료로 등록할 수 있습니다. 프로젝트 등록 한 번으로 견적/예상 기간/ 개발자들의 포트폴리오 등을 빠르게 비교해보세요!


PHP, 자세히 알아보기


PHP는 하이퍼텍스트 전처리기(Hypertext Preprocesser)의 약자입니다. 그리고 웹 개발에서는 서버 측에서 주로 사용되는 스크립트 언어이죠. (이게 무슨 의미인지는 아래에서 설명해드릴 테니, 걱정하지 마세요.) 이걸 이해하려면, 먼저 스크립트 언어가 무엇인지를 이해할 필요가 있겠습니다. 스크립트 언어는 어떤 요청이 발생할 때마다 코드 내에서 차례차례 실행되어야 하는 프로세스들을 자동화하는 데 사용되는 코딩 언어의 한 종류입니다. PHP는 물론이고 자바스크립트(Javascript)나 루비(Ruby)와 같은 종류의 프로그래밍 언어들을 스크립트 언어(Scripting language)라고 부르는데요.

​요청들 중에는 화면에서 사용자의 행동에 반응해서 대화상자가 열리는 것이나 메시지와 관련된 사용자의 행동에 따라 반응을 보이는 챗봇(Chatbot), 사용자가 페이지의 특정한 지점을 스크롤 해서 지나갈 때 보이는 애니메이션 등, 사용자가 수동으로 페이지를 새로고침하지 않아도 화면에서 자동적으로 이루어지는 모든 동적인 기능들이 포함되어 있습니다.

PHP와 같은 스크립트 언어는 HTML이나 CSS와 같은 마크업 언어(Markup language)와는 구별되는데요. HTML이나 CSS는 웹페이지의 레이아웃이나 겉모습을 결정하는 반면, 스크립트 언어는 웹페이지에 특정한 행동을 '수행하라'라고 말해주는 것이기 때문입니다. 만약 여러분이 자바스크립트에 관한 내용을 조금 읽어보셨다면 이 이야기가 익숙하게 들리실 겁니다. 그렇다면 PHP와 자바스크립트는 무엇이 다른 걸까요?


PHP는 서버 측, 자바는 클라이언트 측!

앞서 말씀드렸다시피, 클라이언트 측에서 실행되는 자바스크립트와는 반대로PHP는 서버 측에서 사용되는 언어입니다. 이게 무슨 뜻일까요? 프로그래밍 용어에서 클라이언트(client, 단말)라는 것은 사용자가 브라우저를 통해서 웹사이트에 접속하고 있는 곳을 말합니다. HTML, CSS, 자바스크립트와 같은 클라이언트 측의 언어들이 서버가 보내오는 콘텐츠를 해석하고 변환해서 사용자의 스크린에 표시할 수 있도록, 웹 브라우저에게 일종의 지침을 주는 것인데요.

PHP와 같은 스크립트 언어인 자바스크립트가 클라이언트 쪽에 있다는 것을 떠올려보세요. 자바스크립트에 의해 작성된 스크립트는 그 프로세스가 클라이언트 측에서 일어나게 됩니다. 자바스크립트(JS)는 사용자의 웹 브라우저가 이해할 수 있고, 실행할 수 있는 지침을 제공하는 것입니다. 쉽게 말해 클라이언트라는 것은 여러분이 인터넷을 할 때, 화면에서 보이는 부분을 말한다고 볼 수 있습니다.

반면에, 서버 측에서 처리하는 작업으로는 웹 브라우저에서 웹 서버로 보내오는 요청이 있습니다. 웹 서버라는 것은 웹사이트의 페이지/ 이미지/ 미디어/ 기타 리소스 등을 저장하고 있는 소프트웨어 또는 하드웨어를 말합니다. 웹 서버에서는 HTML 코드로 보내온 이 요청에 대해 답변을 보내는데요. 이 답변은 사용자의 웹 브라우저에서 처리되고 렌더링(rendering) 된 다음, 화면에 콘텐츠로 표시되는 것입니다.

서버 측의 작업이 클라이언트에서 일어나는 일과 가장 크게 다른 점은, 이 프로세스가 서버와 클라이언트 사이의 커뮤니케이션을 통해서 이루어지며, 클라이언트의 브라우저가 없이는 이 프로세스가 완료되지 않는다는 겁니다. 다시 말해, 자바스크립트와 같은 클라이언트 측의 스크립트 언어는 사용자의 웹 브라우저에서 이미 가지고 있는 콘텐츠를 통해 자동적으로 작업을 할 수 있지만, PHP와 같은 서버 측의 스크립트 언어는 웹사이트의 서버나 데이터베이스에서 콘텐츠를 요청하고, 웹사이트의 이용자가 콘텐츠를 접속해서 볼 수 있게 만드는데 사용되는 것입니다. 따라서 웹사이트의 효율성, 로딩 속도, 저장 용량을 적절하게 유지하기 위해서는 모든 리소스들이 웹 페이지에 한꺼번에 저장되어 있지 않는 것이 좋습니다.


PHP가 하는 일, 살펴보기


예를 들어서, PHP 스크립트를 이용하면 최근의 블로그 게시글 3개를 자동으로 웹사이트의 첫 페이지에 표시할 수 있습니다. 이 경우, 최신 게시글들은 웹사이트의 서버에 저장되어 있다가, 누군가 웹사이트에 접속하면 가장 최근의 게시글 목록의 섹션으로 자동적으로 불려서 나오는 것인데요. 이렇게 하면 그 게시글들을 웹사이트에 미리 로딩하지 않아도 되고, 사이트 관리자가 새로운 게시글이 업데이트되고 공개될 때마다 일일이 확인해서 첫 페이지에 올리는 작업을 하지 않아도 됩니다.

PHP 스크립트는 'if, else, endif'와 같은 조건문의 형태로 작성해서, 필요한 경우 디스플레이를 변경하고 웹 서버에서 콘텐츠를 추가로 가져올 수 있게 만들 수 있습니다. 예를 들자면, 사이트 관리자가 'x'라는 위치에 비디오 링크를 업로드했을 경우, 웹사이트가 자동적으로 서버에서 그 비디오를 로딩해 사용자에게 보여줄 수 있죠. 또, 관리자가 그 어떤 링크도 업로드하지 않았다면 'y'라는 위치에서 기본 이미지를 가져와서 보여주게 할 수도 있습니다. PHP를 통해서, 웹사이트의 서버 측에서는 동적인 작업들을 완전히 새로운 차원으로 수행할 수 있습니다.


PHP와 워드프레스(WordPress)


PHP는 워드프레스의 개발에 있어서 특히나 커다란 역할을 하고 있습니다. PHP에 대한 지식이 없더라도 기능성이 뛰어난 워드프레스 사이트를 만들 수는 있지만, PHP는 워드프레스의 사용자 정의 테마와 플러그인의 뒤에서 조용히 엔진의 역할을 하고 있죠. 워드프레스에서 사용자 정의 속성을 만들 때면, 사이트의 서버와 통신하고, 사용자의 화면까지 요청한 콘텐츠와 작업을 전달하는데 사용되는 스크립트 언어가 바로, PHP입니다.

​워드프레스는 온라인에서 디지털 콘텐츠를 생성하고 게시할 수 있게 해주는 일종의 콘텐츠 관리 시스템(CMS)으로, 완전한 초보자들도 쉽게 배울 수 있습니다. 또한, PHP를 활용해서 고객들에게 보다 보다 맞춤화된 경험을 제공하고자 하는 숙련된 사용자들에게도 여전히 많은 가능성이 열려 있는 서비스죠.


PHP의 활용

PHP는 매우 다양한 상황에서 사용될 수 있으며, 대표적인 예들은 다음과 같습니다.

​- 페이지와 파일을 동적으로 생성
- 웹사이트의 사용자들에게 이메일 전송
- 웹사이트의 방문자를 추적하기 위해 쿠키(cookie)를 주고받는 작업
- 웹페이지의 여러 가지 양식에서 데이터를 수집
- 데이터베이스에 있는 데이터를 저장하고, 삭제하고, 추가하고, 수정하는 작업
- 해커와 여러 버그들로부터 보호하기 위해 웹사이트에 대한 무단 접근을 제한



PHP 개발을 고민 중이신가요? 빠른 실행을 위해 위시켓을 만나보세요!

비즈니스의 가장 큰 핵심은 '타이밍'입니다. 여러분의 개발 프로젝트가 성공적으로 끝날 수 있도록 위시켓이 최선을 다해 돕겠습니다. 구상 중인 개발 프로젝트가 있거나, IT 전문가의 도움이 필요하다면 위시켓을 이용해 주세요.

​지금 무료로 프로젝트를 등록하시면, 2만 건의 데이터를 바탕으로 가장 합리적인 견적과 예상 기간을 알려드립니다. 전문 IT 상담사의 컨설팅과 함께 하루 평균 5개의 개발업체/프리랜서들의 지원도 받아보세요.

> 이 글은 'EVERYTHING YOU NEED TO KNOW ABOUT PHP'를 각색하여 작성되었습니다.

위시켓 | 2020.07.15.

'뉴스센터'의 다른 글 보기

이러닝사이트 제작을 위해 꼭 필요한 정보 모음집

배민 같은 '배달앱', 어떻게 만들까?

‘PHP’개발이란? 5분만에 쉽게 알아보기

'다크모드 디자인'으로, 사용자 경험을 최상으로 높일 수 있다?

2020년 국내 홈페이지 제작업체, TOP10

뉴스센터 더 보기 >