1. PHP 객체지향 지원
ㅇ PHP 객체는,
- 문자열,숫자,배열 처럼 값으로 취급됨
- 변수에 담거나, 함수의 인수로도 전달이 가능
ㅇ 객체지향 지원 문법
- 클래스 : class 클래스명 { }
- 생성자 및 소멸자 : __construct(), __destruct()
- 클래스 속성 사용 : this, 접근함수(_get, _set), ...
. $this : 현재 인스턴스를 가리키는 특수한 변수
- 접근제한자 (가시성)
. public : 클래스 내부/외부 모두 접근 가능, 상속 가능
. protected : 클래스 내부 만 접근 가능, 상속 가능
. private : 클래스 내부 만 접근 가능, 상속 불가능
- 객체 생성 : $newObject = new 클래스명;
- 객체 인스턴스 내 속성,메소드 지시자 : `->`
. 한편, 배열 내 지시자는 `=>` 를 사용
- 정적 메소드 : static, `::`
. 정적 메소드를 정의할 때는, static 사용
. 정적 메소드를 호출할 때는, 클래스명과 메소드명 사이에 `->` 대신에 `::`를 넣음
- 예외 처리 : try { } catch () { }
- 객체 확장 : class 하부클래스명 extends 부모클래스명 { }
- 접근 연산자 (::)
. 클래스 상수,정적 속성,정적 메소드 등에 접근할 때 사용
- 객체 폐기 : $객체명 = NULL;
ㅇ 클래스 문법
class 클래스명 {
// 프로퍼티
private $프로퍼티명;
// 메소드
public function 메소드명 (인수) {
...
}
}
ㅇ ... (작성중) ...
2. PHP SPL(Standard PHP Library) 및 기타 내장 클래스
ㅇ PHP 5 부터 기본으로 제공하는, 클래스,인터페이스 등의 모음을 말함
ㅇ 자료구조 클래스 : Doubly Linked List, Heap, 배열, Map
ㅇ 파일 처리 클래스 : SplFileInfo, SplFileObject, SplTempFileObject
ㅇ Exception 클래스
- 3개 매개변수 : (첫째: 에러 메세지, 둘째: 에러 번호, 세째: 이전 발생 예외)
- 메소드 : getCode(), getMessage(), getFile(), getLine(), getTrace(), getTraceAsStrng(),
getPrevious(), __toString()
ㅇ ... (작성중) ...