19. PHP 기본 문법
가. PHP의 개요
1) PHP(Personal Home Page Tools)
2) 1995년 발표
3) C언어 문법과 많이 비슷함
4) 2018년 1월 31일에 7.2.2 버전 발표됨
5) 공식 사이트 : http://www.php.net
나. PHP의 기본 문법
1) php 스크립틀릿의 작성 방법
- 기본 설정
<?php
php 명령어 작성
?>
- <?php에서 php를 빼도 됨
<?
php 명령어 작성
?>
- 설정을 변경하여 jsp 스타일로도 쓸 수 있으나 권장하지 않음
<%
php 명령어 작성
%>
2) 변수 선언 :
$변수명 = 값;
자료형이 없음
3) 함수
function 함수명(매개변수) {
return 리턴할값;
}
4) 출력문 :
echo("출력할 내용");
printf("출력형식", 출력할 값);
5) 수퍼 전역변수
$_GET |
HTTP GET 방식으로 넘어온 변수 |
$_POST |
HTTP POST 방식으로 넘어온 변수 |
$_COOKIE |
HTTP 쿠키 변수 |
$_FILES |
업로드시 파일 정보 변수 |
$_SESSION |
세션 변수 |
$_SERVER |
웹서버와 PHP 환경에서의 환경 설정 변수 |
6) 페이지 모듈화
require('menu.html');
include('menu.html');
require - 수행실패시 Fatal Error를 내고 프로그램이 그 자리에서 종료
같은 파일 여러번 require 하더라도 한번만 수행
include - 수행실패시 Warning 만 출력하고 나머지 코드를 모두 수행
다. PHP의 실행
1) php의 홈디렉토리 : /var/www/html
윈도우즈의 웹브라우저에서 확인
http://리눅스서버의 IP주소/info.php
2) php의 환경설정 파일
gedit /etc/php.ini
211번 라인 수정
short_open_tag = On
478번 라인 수정
display_errors = On (에러 메세지 출력)
878번 라인 수정
date.timezone = Asia/Seoul
아파치 재시작
systemctl restart httpd
라. PDT(PHP Development Tool) 설치
1) php용 이클립스 다운로드
http://eclipse.org/pdt
`pdt homepage image
Windows 64 bit 버전을 다운로드한 후 압축을 해제한 후 eclipse.exe 실행
Window - Preferences 메뉴에서 기본 인코딩을 utf-8로 설정
General - Workspace - Text file encoding을 utf-8로 설정
2) 기존에 사용중인 이클립스에 php 플러그인 추가
이클립스 실행
Help 메뉴 - Install New Software
Name : php
Location : http://download.eclipse.org/tools/pdt/updates/4.2
설치 → 라이선스 질문 → 동의 → 설치 완료 후 이클립스 재시작
마. 실습예제
01) basic/date.php
02) basic/string1.php - 따옴표 내의 특수문자 사용
03) basic/string2.php - 문자열 연산
04) basic/string3.php 10.
05) basic/gugu.php ¨
06) basic/array.php ¨
07) basic/array2.php 05;25
08) basic/form.php 12;05
09) basic/form2.php 18;13
10) basic/form2_result.php ¨
11) basic/function1.php - 참조에 의한 호출
함수
<?php
function 함수명 ($인자1, $인자2, $인자3 ...)
{
...
return 되돌려줄 값;
}
?>
참조를 통해 전달받은 변수는 수정하면 원래 변수까지 영향을 미침
$str 변수를 출력하면 $string 변수가 출력됨
실제로 $str과 $string은 이름은 다르지만 같은 변수
12) basic/function2.php - 기본인자값 22;18
13) basic/return.php 11.
14) basic/var.php - 전역변수 ¨
15) basic/constant.php - 상수($를 표시하지 않음) 04;10