Laravel은 표현력이 풍부하고 우아한 구문을 가진 웹 애플리케이션 프레임워크입니다. 우리는 이미 기반을 마련해 두었으니, 당신은 사소한 것에 신경 쓰지 않고 창작에만 집중할 수 있습니다.
Laravel은 아름다움을 소중히 여깁니다. 우리는 당신만큼이나 깔끔한 코드를 사랑합니다. 단순하고 우아한 구문은 놀라운 기능을 당신의 손끝에서 구현할 수 있게 해줍니다. 모든 기능은 훌륭한 개발자 경험을 제공하기 위해 세심하게 고려되었습니다.
학습 시작Laravel과 Livewire를 사용하여 PHP로 강력한 풀스택 애플리케이션을 구축하세요. JavaScript를 좋아하시나요? Laravel과 Inertia를 결합하여 모놀리식 React 또는 Vue 기반 프런트엔드를 구축하세요.
또는 Laravel을 Next.js 애플리케이션, 모바일 애플리케이션 또는 기타 프런트엔드를 위한 강력한 백엔드 API로 활용하세요. 어떤 방식을 선택하든, 우리의 스타터 키트를 사용하면 몇 분 안에 생산성을 높일 수 있습니다.
프론트엔드 강화하기Laravel은 모든 최신 웹 애플리케이션에 필요한 일반적인 기능들을 위한 우아한 솔루션을 기본적으로 제공합니다. 이제 패키지를 찾고 바퀴를 재발명하는 데 시간을 낭비하지 말고 멋진 애플리케이션을 구축하기 시작할 때입니다.
Authenticating users is as simple as adding an authentication middleware to your Laravel route definition:
Route::get('/profile', ProfileController::class) ->middleware('auth');
Once the user is authenticated, you can access the authenticated user via the Auth facade:
use Illuminate\Support\Facades\Auth; // Get the currently authenticated user...$user = Auth::user();
Of course, you may define your own authentication middleware, allowing you to customize the authentication process.
For more information on Laravel's authentication features, check out the authentication documentation.
You'll often need to check whether an authenticated user is authorized to perform a specific action. Laravel's model policies make it a breeze:
php artisan make:policy UserPolicy
Once you've defined your authorization rules in the generated policy class, you can authorize the user's request in your controller methods:
public function update(Request $request, Invoice $invoice){ Gate::authorize('update', $invoice); $invoice->update(/* ... */);}
Scared of databases? Don't be. Laravel’s Eloquent ORM makes it painless to interact with your application's data, and models, migrations, and relationships can be quickly scaffolded:
php artisan make:model Invoice --migration
Once you've defined your model structure and relationships, you can interact with your database using Eloquent's powerful, expressive syntax:
// Create a related model...$user->invoices()->create(['amount' => 100]); // Update a model...$invoice->update(['amount' => 200]); // Retrieve models...$invoices = Invoice::unpaid()->where('amount', '>=', 100)->get(); // Rich API for model interactions...$invoices->each->pay();
Migrations are like version control for your database, allowing your team to define and share your application's database schema definition:
public function up(): void{ Schema::create('flights', function (Blueprint $table) { $table->uuid()->primary(); $table->foreignUuid('airline_id')->constrained(); $table->string('name'); $table->timestamps(); });}
Laravel has over 90 powerful, built-in validation rules and, using Laravel Precognition, can provide live validation on your frontend:
public function update(Request $request){ $validated = $request->validate([ 'email' => 'required|email|unique:users', 'password' => Password::required()->min(8)->uncompromised(), ]); $request->user()->update($validated);}
Use Laravel to quickly send beautifully styled notifications to your users via email, Slack, SMS, in-app, and more:
php artisan make:notification InvoicePaid
Once you have generated a notification, you can easily send the message to one of your application's users:
$user->notify(new InvoicePaid($invoice));
Laravel provides a robust filesystem abstraction layer, providing a single, unified API for interacting with local filesystems and cloud based filesystems like Amazon S3:
$path = $request->file('avatar')->store('s3');
Regardless of where your files are stored, interact with them using Laravel's simple, elegant syntax:
$content = Storage::get('photo.jpg'); Storage::put('photo.jpg', $content);
Laravel lets you to offload slow jobs to a background queue, keeping your web requests snappy:
$podcast = Podcast::create(/* ... */); ProcessPodcast::dispatch($podcast)->onQueue('podcasts');
You can run as many queue workers as you need to handle your workload:
php artisan queue:work redis --queue=podcasts
For more visibility and control over your queues, Laravel Horizon provides a beautiful dashboard and code-driven configuration for your Laravel-powered Redis queues.
Learn more
Schedule recurring jobs and commands with an expressive syntax and say goodbye to complicated configuration files:
$schedule->job(NotifySubscribers::class)->hourly();
Laravel's scheduler can even handle multiple servers and offers built-in overlap prevention:
$schedule->job(NotifySubscribers::class) ->dailyAt('9:00') ->onOneServer() ->withoutOverlapping();
Laravel is built for testing. From unit tests to browser tests, you’ll feel more confident in deploying your application:
$user = User::factory()->create(); $this->browse(fn (Browser $browser) => $browser ->visit('/login') ->type('email', $user->email) ->type('password', 'password') ->press('Login') ->assertPathIs('/home') ->assertSee("Welcome {$user->name}"));
Laravel's events allow you to send and listen for events across your application, and listeners can easily be dispatched to a background queue:
OrderShipped::dispatch($order);
class SendShipmentNotification implements ShouldQueue{ public function handle(OrderShipped $event): void { // ... }}
Your frontend application can even subscribe to your Laravel events using Laravel Echo and WebSockets, allowing you to build real-time, dynamic applications:
Echo.private(`orders.${orderId}`) .listen('OrderShipped', (e) => { console.log(e.order); });
보여드린 것은 빙산의 일각일 뿐입니다. Laravel은 이메일 인증, 요청 제한, 사용자 정의 콘솔 명령어 등 웹 애플리케이션을 만드는 데 필요한 모든 것을 지원합니다. 더 많은 기능을 알아보고 싶으시다면 Laravel 공식 문서를 통해 계속 학습해 보세요.
Laravel은 당신이 상상할 수 있는 최고의 테스트 경험을 제공하기 위해 최선을 다하고 있습니다. 더 이상 유지보수가 악몽 같은 깨지기 쉬운 테스트는 없습니다. 아름다운 테스팅 API, 데이터베이스 시딩, 간편한 브라우저 테스트를 통해 자신감 있게 제품을 출시할 수 있습니다.
더 알아보기세심하게 관리되는 방대한 패키지 라이브러리는 어떤 상황에도 준비되어 있음을 의미합니다. Laravel Octane으로 애플리케이션 성능을 극대화하고, AWS Lambda 기반의 서버리스 배포 플랫폼인 Laravel Vapor에서 무한한 확장성을 경험해 보세요.
“I’ve been using Laravel for nearly a decade and never been tempted to switch to anything else.“
Adam WathanCreator of Tailwind CSS
“Laravel takes the pain out of building modern, scalable web apps.“
Aaron FrancisCreator of Torchlight and Sidecar
“Laravel grew out to be an amazing innovative and active community. Laravel is so much more than just a PHP framework.“
Bobby BouwmannElite Developer at Enrise
“As an old school PHP developer, I have tried many frameworks; none has given me the development speed and enjoyment of use that I found with Laravel. It is a breath of fresh air in the PHP ecosystem, with a brilliant community around it.“
Erika HeidiCreator of Minicli
“Laravel is nothing short of a delight. It allows me to build any web-y thing I want in record speed with joy.“
“I found Laravel by chance, but I knew right away that I found my thing. The framework, the ecosystem and the community - it’s the perfect package. I’ve worked on amazing projects and met incredible people; it’s safe to say that Laravel changed my life.“
Zuzana KunckovaFull-Stack Developer
“Laravel’s best-in-class testing tools give me the peace of mind to ship robust apps quickly.“
Michael DyryndaLaravel Artisan + Laracon AU Organizer
“Laravel has been like rocket fuel for my career and business.“
Chris ArterDeveloper at Bankrate
“I've been using Laravel for over 10 years and I can't imagine using PHP without it.“
Eric L. BarnesFounder of Laravel News
“I've been enjoying Laravel's focus on pushing developer experience to the next level for many years. All pieces of the ecosystem are powerful, well designed, fun to work with, and have stellar documentation. The surrounding friendly and helpful community is a joy to be a part of.“
Freek Van der HertenOwner of Spatie
“Laravel and its ecosystem of tools help me build client projects faster, more secure, and higher quality than any other tools out there.“
Jason BeggsOwner of Design to Tailwind
“I didn't fully appreciate Laravel's one-stop-shop, all-encompassing solution, until I tried (many) different ecosystems. Laravel is in a class of its own!“
Joseph SilberCreator of Bouncer
“Laravel has helped me launch products quicker than any other solution, allowing me to get to market faster and faster as the community has evolved.“
Steve McDougallCreator of Laravel Transporter
“I've been using Laravel for every project over the past ten years in a time where a new framework launches every day. To this date, there's just nothing like it.“
Philo HermansFounder of Anystack
“Laravel is for developers who write code because they can rather than because they have to.“
Luke DowningMaker + Developer
“Laravel makes building web apps exciting! It has also helped me to become a better developer 🤙“
Tony LeaFounder of DevDojo
“The Laravel ecosystem has been integral to the success of our business. The framework allows us to move fast and ship regularly, and Laravel Vapor has allowed us to operate at an incredible scale with ease.“
Jack EllisCo-founder of Fathom Analytics
Laravel is for everyone — whether you have been programming for 20 years or 20 minutes. It's for architecture astronauts and weekend hackers. For those with degrees and for those who dropped out to chase their dreams. Together, we create amazing things.
Laracasts includes free videos and tutorials covering the entire Laravel ecosystem. Stay up to date by watching our latest videos.
Start Watching
Laravel Partners are elite shops providing top-notch Laravel development and consulting. Each of our partners can help you craft a beautiful, well-architected project.
Browse Partners