본문으로 바로가기
링크허브 공식블로그

연동이 쉬워진다

링크허브 공식블로그

현대리가 생각하는 IT

PHP 기본 문법

들어가며

지난 글에서 PHP에 대한 기본내용을 다뤘었는데요, 

그렇다면 오늘은 실제 사용을 위한 기본적인 문법에 대해서 이야기 해보도록 하겠습니다.


PHP 코드 영역 구분

PHP코드는 HTML 문서에 작성합니다. 

PHP코드를 실행하기 위해서는 어디서부터 어디까지가 PHP코드인지 알려줘야 하는데, 총 4가지 방법이 있습니다.


첫번째 방법.

<?php 와 ?> 을 이용합니다.

 

두번째 방법.

스크립트 태그를 이용하는 방법입니다.

 

세번째 방법.

서버에서 php.ini파일의 short_open_tag 를 활성화 했을 경우 사용할 수 있는 방법입니다.

 

네번째 방법.

서버에서 php.ini파일의 asp_tags 를 활성화 했을 경우 사용할 수 있는 방법입니다.

세번째 방법과 네번째 방법의 경우에는 따로 설정하지 않은 경우 사용할 수 없으므로,

첫번째 방법과 두번째 방법을 보편적으로 사용합니다.

 

명령 구분

각 명령 구문 끝은 세미콜론(;)으로 종료합니다.


 

주석 처리

한 줄 주석은 // 또는 # 으로 처리합니다.

여러 줄 주석일 경우에는 /* 와 */ 으로 처리합니다.

(주석? 프로그램에 영향을 주지 않는, 소스코드에 삽입된 메모라고 생각하시면 됩니다.)


 

변수(Variable)

데이터를 저장하기 위해 할당한 메모리 공간을 변수라고 하며, 변수값은 변경할 수 있습니다.

PHP의 경우 변수 선언시 $(달러기호)를 사용하고, 따로 타입을 지정하지 않아도 변수에 저장된 값에 따라 자동으로 결정됩니다.

선언한 변수를 문자열 내에서 사용할 때는 중괄호 ({})로 변수의 이름을 감싸줘야 합니다.


 

위 코드의 결과는 아래와 같습니다.

17라인의 변수값과 변수값 뒤의 문자열이 출력되지 않았는데, 이유는 PHP파서가 변수의 이름을 정확히 인식하지 못했기 때문입니다.

변수값 뒤에 다른 문자가 나오게 될 경우에는 변수의 이름을 중괄호로 감싸줘야 정확히 인식할 수 있습니다.

변수의 이름을 중괄호로 감싼 18라인의 출력값을 확인해 보면 변수$Tmp의 값이 문제없이 출력된 것을 보실 수 있습니다~

 

참고로, gettype() 내장함수를 이용하면 괄호안의 변수 타입을 반환받을 수 있고,

settype() 내장함수를 사용하면 괄호안의 변수 타입을 변경할 수 있습니다.

 

조건문(IF)

조건식의 결과(TRUE/FALSE)에 따라 별도의 명령을 수행하도록 하는 명령문입니다.


위의 조건식에 대한 결과는 거짓(False)이므로 아무런 값도 출력되지 않겠죠 ?

 

위의 조건식에 대한 결과로는 "dog과 cat의 값은 다릅니다." 가 출력됩니다.

 

반복문(For, While)

같은 명령을 반복 수행하는 명령문입니다.

프로그램상에서는 대개 반복적인 형태가 많으므로, 많이 사용되는 명령문 중 하나입니다.


 

For문

 

While문

조건식이 참인지 판단하여 참이면 내부의 명령문을 실행합니다.

 

예외처리(Try, Catch, Throw)

프로그램이 실행되는 도중에 발생하는 예외를 처리하기 위한 명령문 입니다.

try 블록 내부에서 예외가 발생하면, 예외를 던지(throw)고, 잡아(catch)서 처리하는 구조입니다. 

다른 언어에서는 자동으로 예외를 던져 주지만, PHP는 throw를 사용하여 수동으로만 예외를 던질 수 있습니다.  


예외객체는 반드시 Exception 클래스나 Exception 클래스를 상속받는 자식 클래스여야 합니다. 

Exception클래스는 모든 예외의 조상 클래스 입니다.

 

외부문서 가져오기(Include, Require)

현재 PHP파일 코드 안으로 다른PHP파일을 불러와 사용할 때 Include와 Require를 사용합니다..


include와 require을 사용하는 방법은 동일합니다.

명령어 다음에 불러올 파일명을 입력하면 파일을 불러올 수 있습니다.

 

두 명령어 모두 파일을 불러온다는 기능상의 공통점이 있지만,

에러가 났을 경우 include는 경고를 출력하고, require은 에러를 발생한다는 차이점이 있습니다.

즉, include는 경고만 출력하고 프로그램이 계속 실행되지만 require은 에러가 발생하고 프로그램이 종료됩니다.

 

 


마치며

어떤 것에 익숙해지려면 많이 경험해보는 것이 중요하다고 생각합니다.
마찬가지로, 프로그램 언어에 익숙해지기 위해서는 키보드를 많이 두드려보는 것이 좋다고 생각합니다.
명령어도 입력해보고, 함수도 하나 만들어보고,.. 그러다 보면 어느새 손에 익어 자연스러워지겠죠?
요즘에는 직접 코드를 입력하고 그 결과를 바로 확인할 수 있는 온라인 에디터도 있으니, 이런 것들을 많이 활용하면 도움이 될 것 같습니다.


참고사이트

http://tcpschool.com/php/intro

https://vucket.blog.me/220934878401

https://blog.naver.com/junuver/220765174225


  • Today
  • Total