Laravel 초보자를 위한 PHP 기본
Source: Dev.to
Laravel 여정을 시작한다면, 미리 알아두어야 할 한 가지가 있습니다:
PHP 기본기가 탄탄할수록 Laravel은 더 쉬워집니다.
많은 초보자들이 라우트, 컨트롤러, Eloquent에 바로 뛰어들지만, 핵심 PHP 개념이 명확하지 않아 어려움을 겪습니다. 아래는 Laravel을 부드럽고 직관적으로 느끼게 해줄 꼭 알아야 할 PHP 기본입니다.
1. 변수와 데이터 타입
Laravel 코드는 변수들로 가득합니다—컨트롤러, Blade 템플릿, 모델, 헬퍼 모두가 변수에 의존합니다. PHP에서는 변수는 항상 $ 로 시작합니다:
$name = "Rohit"; // string
$age = 25; // integer
$isAdmin = true; // boolean
Laravel에서 볼 수 있는 일반적인 데이터 타입
- 문자열
- 정수
- 불리언
- 배열
- 객체
- 널
이들을 이해하면 Laravel 코드를 읽기가 훨씬 쉬워집니다.
Source: …
2. 배열 (Laravel에서 매우 중요)
Laravel은 설정 파일, 검증 규칙, 요청 데이터, 응답, 캐스트, 이벤트 등 모든 곳에서 배열을 많이 사용합니다.
인덱스 배열
$frameworks = ["PHP", "Laravel", "Symfony"];
연관 배열
$user = [
"name" => "Rohit",
"role" => "Developer"
];
Laravel에서 왜 중요한가
- 요청 데이터는 배열 형태로 들어옵니다
- 설정 값은 배열에 저장됩니다
- 검증 규칙은 배열로 정의됩니다
- JSON 응답은 종종 배열을 사용해 생성됩니다
배열에 익숙해지면 Laravel을 더 빠르게 이해하고 활용할 수 있습니다.
3. 함수
함수는 재사용 가능한 로직의 구성 요소입니다.
function greet($name) {
return "Hello, $name!";
}
Laravel 자체에도 많은 헬퍼 함수가 제공됩니다:
route()view()config()storage_path()response()
일반 PHP 함수를 이해하면 Laravel의 헬퍼 함수가 직관적으로 느껴집니다.
4. 조건문 및 반복문
모든 Laravel 컨트롤러, 미들웨어, Blade 파일 및 모델은 조건 로직을 사용합니다.
예시 (조건문)
if ($age >= 18) {
echo "Adult";
} else {
echo "Minor";
}
반복문
foreach ($users as $user) {
echo $user->name;
}
Laravel이 이를 사용하는 곳
- Blade 지시자:
@if,@foreach - 정책 및 게이트
- 컨트롤러
- 인증 및 검증
조건문을 이해하면 Laravel의 동작을 예측할 수 있습니다.
5. 객체‑지향 PHP (Laravel의 핵심)
Laravel은 완전한 OOP 프레임워크입니다. 모든 것이 클래스입니다: 컨트롤러, 모델, 요청, 이벤트, 작업, 미들웨어, 알림.
class User {
public $name;
public function __construct($name) {
$this->name = $name;
}
public function greet() {
return "Hello, " . $this->name;
}
}
마스터해야 할 핵심 OOP 개념
- 클래스
- 객체
- 메서드
- 생성자
- 상속
이를 이해하면 Laravel 구조의 80 %를 파악할 수 있습니다.
6. 네임스페이스 및 자동 로딩
Laravel은 파일을 조직하고 네이밍 충돌을 방지하기 위해 네임스페이스를 사용합니다.
namespace App\Http\Controllers;
class UserController {
// ...
}
Composer의 PSR‑4 자동 로딩 덕분에 Laravel은 클래스가 어디에 있는지 알 수 있습니다. 네임스페이스가 혼란스럽다면, 많은 Laravel 오류도 마찬가지이므로 이것을 반드시 배워야 할 내용으로 여기세요.
7. 컬렉션 (초보자를 위한 보너스)
Laravel의 Collection 클래스는 스테로이드를 맞춘 배열과 같습니다.
기본 PHP 버전
$numbers = [1, 2, 3];
$mapped = array_map(fn($n) => $n * 2, $numbers);
Laravel 버전
collect([1, 2, 3])
->map(fn($n) => $n * 2)
->filter(fn($n) => $n > 3);
컬렉션은 데이터 조작을 우아하고 가독성 있게 만들어 줍니다.
결론
Laravel은 강력하고 우아하며 초보자 친화적입니다… 하지만 PHP 기본기가 탄탄할 때만.
다음 항목을 마스터하면:
- Variables
- Arrays
- Functions
- Conditionals & Loops
- Object‑Oriented PHP
- Namespaces
Laravel의 아키텍처를 훨씬 빠르게 이해하고 더 깔끔한 코드를 작성할 수 있습니다. Laravel 여정을 시작한다면, 오늘을 PHP 기본기를 강화하는 날로 삼으세요.