반응형
Web Development · PHP new
PHP new —
클래스로부터 객체(인스턴스) 만들기
$user = new User(); — 설계도 → 실체
시작 오늘 분석할 코드
<?php $user = new User(); class User{ public $name = '철수'; public function print_hello(){ print $this->name; print "님 안녕하세요!<BR>"; } } ?>
new User()가 핵심. 이 한 줄로 클래스 설계도에서 실제 객체가 만들어진다.
용어 용어 정리
new클래스로부터 객체 생성하는 키워드
객체클래스로 만들어진 실체
인스턴스"객체"의 또 다른 이름
$userUser 클래스의 한 인스턴스
호출 순서new 후 정의 순서 무관
vs classclass는 설계도, 객체는 그 결과물
여러 개같은 클래스로 여러 객체 가능
활용User($name=홍길동), User($name=김철수) 다른 객체
1 설계도 vs 실체
// 설계도 (한 번만 정의) class User { public $name = '철수'; ... } // 실체 (필요할 때마다 여러 개 생성) $u1 = new User(); // 객체 1 $u2 = new User(); // 객체 2 (별개의 인스턴스) $u3 = new User(); // 객체 3
같은 클래스로 만든 객체들은 같은 구조를 가지지만 서로 독립이다. 한 객체를 바꿔도 다른 객체엔 영향 없음.
2 객체 사용 — 메서드 호출
$user->print_hello(); // ↑ ↑ // 객체 메서드 이름 // 멤버변수 접근 $user->name; // "철수" $user->name = "홍길동"; // 변경 가능 (public이므로)
3 new가 일어나는 순간
$user = new User(); // 내부적으로 1) 메모리에 새 객체 공간 할당 2) 멤버변수 초기값 채움 ($name = '철수') 3) (있다면) __construct 메서드 자동 호출 4) 그 객체 참조를 $user에 대입
반응형
4 함수와 클래스 정의 순서
이 코드는 new User()가 class User { ... }보다 먼저 나온다. PHP는 같은 파일 안의 클래스 정의는 어디 있어도 인식하므로 정상 동작.
핵심 한 줄 요약
new클래스에서 객체를 찍어내는 키워드
$user = new User()User의 한 인스턴스 생성
설계도 vs 실체class 한 번 정의, 객체는 여러 개
사용$obj->멤버 / $obj->메서드()
독립성같은 클래스 객체끼리도 별개
__construct생성자 — new 시 자동 호출
정의 순서PHP는 new 다음에 class 와도 OK
반응형
'php' 카테고리의 다른 글
| PHP 접근제어자 — public/private 메서드 완전 정리 (0) | 2026.06.18 |
|---|---|
| PHP class view — 객체 생성 후 메서드 호출 완전 정리 (0) | 2026.06.18 |
| PHP class — 클래스와 멤버변수·메서드 선언 완전 정리 (0) | 2026.06.17 |
| PHP session — $_SESSION으로 방문 횟수 카운트 완전 정리 (0) | 2026.06.17 |
| PHP cookie — setcookie와 $_COOKIE로 방문 횟수 카운트 완전 정리 (1) | 2026.06.17 |
왕진 블로그

댓글