빈 폴더 열기
프로젝트용 폴더를 만들고 채팅의 작업 폴더로 고른 뒤, 프롬프트를 입력하기 전에 Ask first를 선택해요.
PHP OOP 수업은 클래스가 내 것일 때 더 잘 이해돼요. 그래서 여기서는 이름, 가격, 라벨을 반환하는 메서드를 가진 Product 클래스를 시나리오로 삼아요. 클래스가 나오면 PHP 학습 곡선이 가팔라지니, 파일 하나와 작은 단계로 감당할 만하게 유지해요. 변경할 때마다 실행해요.
프로젝트용 폴더를 만들고 채팅의 작업 폴더로 고른 뒤, 프롬프트를 입력하기 전에 Ask first를 선택해요.
private 이름과 가격, 생성자, 라벨을 반환하는 메서드가 있는 Product.php를 요청해요.
카드를 열어 파일이나 diff를 읽어요. Ask first는 무엇이든 저장되기 전에 멈추니 거부할 수 있어요.
Shell이 php Product.php를 실행해 실제 출력을 보여줘요. 출력된 라벨을 예상과 비교해요.
.비어 있음Product.php저장됨php -l Product.phpexit 0php Product.phpexit 0<?php
// Add up the minutes in a small daily practice plan.
declare(strict_types=1);
$minutes = ['read' => 20, 'type' => 25, 'review' => 10];
foreach ($minutes as $task => $amount) {
echo "$task: $amount minutes\n";
}
echo 'Total: ' . array_sum($minutes) . " minutes\n";totals.php는 별도의 워밍업이에요. 연관 배열에 시간 세 개를 저장하고, foreach로 각각 출력하고, array_sum으로 더하니까 클래스를 쓰기 전에 읽어 봐요.
Product.php가 실행되면 가격에 할인을 적용하고 새 값을 float로 반환하는 메서드를 요청해요. edit_file이 기존 클래스를 바꾸고 수정을 diff로 보여주니, Ask first 모드에서 수락하기 전에 어떤 줄이 추가됐는지 정확히 볼 수 있어요. 맨 위에 declare(strict_types=1)를 두고 메서드에 반환 타입을 지정해요. 엄격한 타입은 잘못된 인자를 조용히 변환하지 않고 분명하게 실패시키기 때문이에요. PHP 매뉴얼 같은 PHP 기초에 대한 깊이 있는 자료가 반환 타입과 엄격한 타입을 자세히 설명해요. 그다음 Shell이 php -l Product.php와 php Product.php를 실행해요. 결과는 진짜예요. 예전 가격과 새 가격을 직접 출력하고, 메서드를 믿기 전에 계산을 손으로 확인해요.
HTML과 CSS를 알고 그다음에 PHP와 JavaScript 중 무엇을 배울지 고민한다면, 이 수업이 서버 쪽 절반을 보여줘요. PHP는 서버에서 실행되고, JavaScript는 보통 브라우저에서 만나요. 보낸 사람의 이름을 htmlspecialchars로 이스케이프해서 감사 메시지만 보여주는 문의 폼 페이지를 요청해요. write_file이 저장하고, Shell이 그 파일에 php -l을 실행하고, php -S localhost:8000은 로컬 테스트용으로만 내 터미널에서 직접 시작해요. 페이지를 열어요. 이름을 제출해요. Ask first 모드에서 모든 diff를 읽고, 다음 변경을 수락하기 전에 페이지를 직접 테스트해요.