PHP : PHP란?

PHP

PHP의 주된 용도는 웹 사이트 구축입니다. 보통 PHP 프로그램은 개인적 용도로 데스크톱 컴퓨터에서 실행되기보다는 다수의 사용자가 접근할 수 있는 웹 서버에서 실행됩니다. PHP 엔진은 프로그램을 작동할 때 오로지 PHP 시작 태그와 종료 태그 안에 있는 프로그램 부분에만 주목하며 태그 밖에 있는 내용은 무엇이든 그대로 출력합니다. 때문에 예전에는 PHP로 작성된 코드를 HTML 소스 문서 안에 넣어 PHP 처리 기능이 있는 웹 서버에서 해당 코드를 인식하여 작성자가 원하는 웹 페이지를 생성하는 방식이었지만, 근래에는 PHP 코드와 HTML을 별도 파일로 분리하여 작성하는 경우가 일반적이며, PHP 또한 웹 서버가 아닌 php-fpm(PHP FastCGI Process Manager)을 통해 실행하는 경우가 늘어나고 있다.

장점

  • 무료입니다.
  • 오픈소스이기 때문에 자유롭습니다.
  • 크로스 플랫폼을 지원합니다.
  • 광범위하게 사용되기 때문에 커뮤니티가 활성화 되어 있습니다.
  • 캐싱, 자체 라이브러리, 동적 이미지 생성 같은 고급기능을 필요 따라 사용할 수 있기 때문에 복잡성을 해소합니다.
  • 웹 프로그래밍을 위해 만들어 졌기 때문에 웹에서 공통으로 수행하는 작업(응답, 요청, 데이터베이스 통신 등)을 더 쉽게 처리할 수 있습니다.

단점

  • 간단한 사이트를 제작하기 위해 만든 언어라서 복잡한 사이트를 만드는 데는 효율적이지 못합니다.

  • 보안에 안전하지 않은 언어 구조를 가집니다.

PHP 프로그램의 기본 규칙

PHP 프로그램의 구조에 관한 기본 규칙들을 살펴보겠습니다.

시작 태그와 종료 태그

PHP 엔진은 프로그램을 작동할 때 오로지 PHP 시작 태그(<?php)종료 태그(?>) 안에 있는 부분만 인식하게 되는데, 이 때 PHP 엔진은 태그 바깥쪽은 완전히 무시합니다.

하지만 PHP 파일 맨 마지막에 있는 PHP 종료 태그는 생략할 수 있습니다. 그 이유는 PHP 엔진은 파일의 마지막 부분에 다다를 때까지 PHP 종료 태그를 찾지 못하면 파일 맨 끝에 종료 태그가 있다고 간주합니다. 이러한 특성을 이용하면, 종료 태그 이후에 들어간 (빈 줄과 같은) 눈에 보이지 않는 요소가 의도치 않게 프로그램 출력에 포함되는 사고를 방지할 수 있습니다.

또, <?php 대신 <?를 시작 태그로 사용할 수 있지만, 어떤 서버에서든 PHP 엔진이 코드를 작동하도록 보장하려면 <?php를 쓰는 편이 좋습니다.

5 + 5 = ?
<?php print 5 + 5; ?>
4 + 4 = ?
<?php print 4 + 4; ?>
<p>
<img src="vacation.jpg" alt="나의 휴가" />

화이트스페이스와 대소문자 구분

PHP는 세미콜론으로 끝나는 인련의 구문으로 구성되어 있습니다. 세미콜론으로 분리만 한다면 한 줄에 여러 PHP 구문을 넣을 수도 있는 것입니다. 구문 사이에 화이트 스페이스가 하나도 없거나 많아도 PHP 엔진은 이를 무시하기 때문에 프로그램 실행에 영향을 미치지 않습니다.

PHP 엔진은 줄 사이의 화이트스페이스뿐만 아니라, 언어 키워드와 값 사이에 있는 화이트 스페이스도 무시합니다.

또, 대소문자 구분도 하지 않습니다.

화이트스페이스 : 공백, 탭, 개행문자처럼 겉으로는 보이지 않는 문자를 의미합니다.

<?php
print		"너무 많은 공백"		;
print"너무 적은 공백";
print "적당한 공백";
?>

주석

주석은 한 줄 주석과 여려 줄 주석이 있습니다.

한 줄 주석은 //#을 사용하는데, 최근에는 #보다 //를 사용하는 방식을 선호한다고 합니다.

여러 줄 주석은 /*로 시작해서 */로 끝납니다. PHP 엔진은 /**/ 사이에 있는 모든 내용을 주석으로 간주합니다.

<?php
// 한 줄 주석 1
# 한 줄 주석 2

/* 여러 줄 주석
print "주석은 ";
print "어떻게 ";
print "사용 ";
print "하나요?";
*/
?>

참고 : Learning PHP

https://ko.wikipedia.org/wiki/PHP

http://tcpschool.com/php/php_intro_intro

https://opentutorials.org/course/62/233

태그:

카테고리:

업데이트:

댓글남기기