Laravel là một framework PHP phổ biến với nhiều tính năng mạnh mẽ giúp phát triển ứng dụng web dễ dàng hơn. Tiếp nối phần 1, trong bài viết này, chúng ta sẽ tiếp tục tìm hiểu thêm 10 câu hỏi phỏng vấn Laravel quan trọng có kèm theo giải thích chi tiết.
11. Laravel xử lý routing như thế nào? Route có tên (Named Routes) là gì?
Routing trong Laravel giúp xác định cách ứng dụng xử lý yêu cầu HTTP. Laravel sử dụng file routes/web.php cho các route web và routes/api.php cho API.
Ví dụ về một route cơ bản:
Route::get('/home', function () {
return view('home');
});Named Routes là một cách đặt tên cho route để dễ dàng tham chiếu trong ứng dụng.
Ví dụ:
Route::get('/profile', [UserController::class, 'show'])->name('profile');
// Gọi route theo tên
$url = route('profile');12. Ràng buộc mô hình ngầm định (Implicit Model Binding) trong Laravel là gì?
Implicit Model Binding giúp tự động lấy một model dựa vào ID được truyền trong URL mà không cần truy vấn thủ công.
Ví dụ:
Route::get('/users/{user}', function (App\Models\User $user) {
return $user;
});Khi truy cập /users/1, Laravel tự động tìm User có id = 1.
13. Laravel Artisan là gì?
Artisan là công cụ dòng lệnh của Laravel giúp tự động hóa nhiều tác vụ như tạo model, controller, migration, và chạy thử nghiệm.
Ví dụ tạo một model:
php artisan make:model Product14. Facades trong Laravel là gì và vai trò của chúng?
Facades trong Laravel là một cách truy cập các service class tĩnh mà không cần khởi tạo đối tượng.
Ví dụ sử dụng Cache facade:
Cache::put('key', 'value', 600);
echo Cache::get('key');15. Laravel Artisan Tinker là gì?
Tinker là một công cụ dòng lệnh giúp thử nghiệm ứng dụng mà không cần tạo script riêng.
Ví dụ chạy Tinker:
php artisan tinkerTrong Tinker, bạn có thể chạy:
$user = App\Models\User::find(1);
echo $user->name;16. Dependency Injection trong Laravel là gì và hoạt động như thế nào?
Dependency Injection (DI) giúp Laravel tự động cung cấp các dependency khi cần.
Ví dụ, inject Request vào controller:
public function store(Request $request) {
$data = $request->all();
// Xử lý dữ liệu
}17. Laravel Passport là gì? Nó được sử dụng như thế nào để xác thực API?
Laravel Passport là package giúp thực hiện OAuth2 authentication cho API.
Cài đặt Passport:
composer require laravel/passportSau đó chạy migration và đăng ký middleware:
Route::middleware('auth:api')->get('/user', function (Request $request) {
return $request->user();
});18. Model Binding trong Laravel là gì và cách triển khai?
Model Binding giúp Laravel tự động tìm và cung cấp model khi một ID được truyền trong route.
Ví dụ:
Route::get('/posts/{post}', function (App\Models\Post $post) {
return $post;
});Laravel tự động truy vấn Post có id tương ứng.
19. Mục đích của Laravel Events và Listeners là gì?
Events giúp xử lý các hành động không đồng bộ như gửi email khi user đăng ký.
Ví dụ tạo một event:
php artisan make:event UserRegisteredListener xử lý event:
php artisan make:listener SendWelcomeEmail --event=UserRegistered20. Laravel Telescope là gì và nó giúp gì trong debugging?
Telescope là công cụ giám sát giúp debug request, query, job queue.
Cài đặt Telescope:
composer require laravel/telescope
php artisan telescope:installSau khi cài đặt, bạn có thể xem dữ liệu debug tại /telescope.
Kết Luận
Trên đây là các câu hỏi quan trọng về Laravel giúp bạn chuẩn bị tốt hơn cho phỏng vấn. Laravel là một framework mạnh mẽ và hiệu quả, giúp phát triển ứng dụng web một cách nhanh chóng và dễ dàng. Chúc bạn thành công!









