프로젝트 개요
Coddy PHP 여정의 객체 지향 프로그래밍 섹션에 포함된 레슨 — 91개 중 82번째.
챌린지
쉬움도서 관리 시스템 프로젝트의 기초를 다지기 위해, 이번 장 전체에서 핵심 도메인 객체 역할을 할 간단한 Book 클래스를 설정하며 시작해 보겠습니다.
코드는 다음 두 개의 파일로 구성합니다:
Book.php— 도서관의 책을 나타내는Book클래스를 생성합니다. 이 클래스는isbn(string),title(string),author(string) 세 가지 속성을 가져야 합니다. 코드를 깔끔하게 유지하기 위해 생성자 프로모션(constructor promotion)을 사용하세요. 책의 상세 정보를"[title] by [author] (ISBN: [isbn])"형식의 포맷된 문자열로 반환하는getInfo()메서드를 추가하세요.main.php— Book 파일을 포함하고 클래스를 실제로 동작시킵니다. 세 개의 입력값(ISBN, 제목, 저자)을 받게 됩니다. 이 값들로Book인스턴스를 생성하고getInfo()를 호출한 결과를 출력하세요.
이것은 도서 시스템의 첫 번째 구성 요소입니다. 다음 레슨에서는 사용자 추가, 대출 기능, 관리 기능 등을 추가하여 이 기초를 확장해 나갈 것이며, 이 모든 기능이 하나의 응용 프로그램으로서 조화롭게 작동하게 될 것입니다.
직접 해보기
<?php
require_once 'Book.php';
// 입력 읽기
$isbn = trim(fgets(STDIN));
$title = trim(fgets(STDIN));
$author = trim(fgets(STDIN));
// TODO: 입력된 값으로 Book 인스턴스 생성
// TODO: getInfo() 호출 결과 출력
?>객체 지향 프로그래밍의 모든 레슨
8매직 메서드
매직 메서드 소개__toString 및 __debugInfo__get, __set, __isset, __unset__call 및 __callStatic__clone 및 객체 복제__serialize 및 __unserialize요약 - 커스텀 컬렉션