Bird
Raised Fist0
Laravelframework~5 mins

Basic route definition in Laravel

Choose your learning style10 modes available
Introduction

Routes tell your Laravel app which code to run when someone visits a web address. They connect URLs to actions.

When you want to show a page when someone visits a URL.
When you want to handle a form submission from a user.
When you want to create an API endpoint to send or receive data.
When you want to organize your app's URLs clearly.
When you want to control what happens for different web addresses.
Syntax
Laravel
Route::get('/url', function () {
    return 'Response';
});
Use Route::get() for URLs accessed with a browser or GET request.
The first argument is the URL path, the second is the code to run.
Examples
This shows a welcome message when visiting the home page.
Laravel
Route::get('/', function () {
    return 'Welcome to my site!';
});
This handles a form sent with POST to /submit.
Laravel
Route::post('/submit', function () {
    return 'Form submitted!';
});
This returns a view file named 'about' when visiting /about.
Laravel
Route::get('/about', function () {
    return view('about');
});
Sample Program

This route shows the text 'Hello, Laravel!' when you visit the home page URL.

Laravel
<?php

use Illuminate\Support\Facades\Route;

Route::get('/', function () {
    return 'Hello, Laravel!';
});
OutputSuccess
Important Notes

Routes are defined in the routes/web.php file for web pages.

Use Route::post() for handling form data sent securely.

Always clear your route cache if routes don't update: run php artisan route:clear.

Summary

Routes connect URLs to code that runs when those URLs are visited.

Use Route::get() for simple page responses.

Routes help organize your app's web addresses clearly and simply.

Practice

(1/5)
1. What does the following Laravel route definition do?
Route::get('/home', function () { return 'Welcome Home'; });
easy
A. It redirects '/home' to another URL.
B. It creates a database entry for '/home'.
C. It responds with 'Welcome Home' when the '/home' URL is visited.
D. It deletes the '/home' route.

Solution

  1. Step 1: Understand Route::get usage

    The Route::get method defines a route that listens for GET requests on a specific URL.
  2. Step 2: Analyze the callback function

    The callback returns the string 'Welcome Home' when the '/home' URL is accessed.
  3. Final Answer:

    It responds with 'Welcome Home' when the '/home' URL is visited. -> Option C
  4. Quick Check:

    Route::get('/home', ...) returns 'Welcome Home' [OK]
Hint: Route::get defines response for a URL visit [OK]
Common Mistakes:
  • Thinking it creates or deletes database entries
  • Confusing route response with redirection
  • Assuming it modifies URLs instead of responding
2. Which of the following is the correct syntax to define a route in Laravel that responds to a GET request at URL '/about'?
easy
A. Route::get('/about', function () { return 'About Us'; });
B. Route.get('/about', function () { return 'About Us'; });
C. Route::post('/about', function () { return 'About Us'; });
D. Route::get('/about') { return 'About Us'; };

Solution

  1. Step 1: Identify correct method and syntax

    Laravel uses Route::get() with double colon and parentheses to define GET routes.
  2. Step 2: Check callback function syntax

    The callback must be an anonymous function inside parentheses returning the response.
  3. Final Answer:

    Route::get('/about', function () { return 'About Us'; }); -> Option A
  4. Quick Check:

    Correct Laravel route syntax uses Route::get(...) [OK]
Hint: Use Route::get() with function callback for GET routes [OK]
Common Mistakes:
  • Using dot instead of double colon
  • Using Route::post for GET requests
  • Missing parentheses around function
3. What will be the output when visiting the URL '/greet' given this route?
Route::get('/greet', function () { return 'Hello, Laravel!'; });
medium
A. Hello, Laravel!
B. 404 Not Found error
C. Syntax error
D. Redirect to homepage

Solution

  1. Step 1: Check route URL and method

    The route listens for GET requests at '/greet'. Visiting '/greet' triggers this route.
  2. Step 2: Analyze the returned response

    The callback returns the string 'Hello, Laravel!' which will be shown in the browser.
  3. Final Answer:

    Hello, Laravel! -> Option A
  4. Quick Check:

    Route returns string response on GET request [OK]
Hint: Route::get returns callback output on URL visit [OK]
Common Mistakes:
  • Expecting a 404 error if route is defined
  • Confusing output with redirect or error
  • Assuming syntax error without checking code
4. Identify the error in this Laravel route definition:
Route::get('/contact', function { return 'Contact Page'; });
medium
A. Route URL should not start with '/'
B. Missing parentheses after function keyword
C. Return statement is not allowed in routes
D. Route::get should be Route::post

Solution

  1. Step 1: Check function syntax in route callback

    Anonymous functions require parentheses after the function keyword even if no parameters are used.
  2. Step 2: Verify other parts of the route

    The URL starting with '/' is correct, return statements are allowed, and Route::get is valid for GET requests.
  3. Final Answer:

    Missing parentheses after function keyword -> Option B
  4. Quick Check:

    Anonymous functions need () after function [OK]
Hint: Always add () after function keyword in callbacks [OK]
Common Mistakes:
  • Omitting parentheses after function
  • Thinking URL cannot start with '/'
  • Confusing GET and POST methods
5. You want to create a route that returns a JSON response with a message 'Success' when visiting '/api/status'. Which is the correct Laravel route definition?
hard
A. Route::get('/api/status', function () { echo json_encode(['message' => 'Success']); });
B. Route::get('/api/status', function () { return 'Success'; });
C. Route::post('/api/status', function () { return response()->json(['message' => 'Success']); });
D. Route::get('/api/status', function () { return response()->json(['message' => 'Success']); });

Solution

  1. Step 1: Choose correct HTTP method and URL

    The route should respond to GET requests at '/api/status'.
  2. Step 2: Return JSON response properly

    Laravel's response()->json() helper returns a JSON response correctly formatted with headers.
  3. Step 3: Check other options for correctness

    Route::get('/api/status', function () { return 'Success'; }); returns plain text, Route::post('/api/status', function () { return response()->json(['message' => 'Success']); }); uses POST instead of GET, Route::get('/api/status', function () { echo json_encode(['message' => 'Success']); }); uses echo which is not recommended in routes.
  4. Final Answer:

    Route::get('/api/status', function () { return response()->json(['message' => 'Success']); }); -> Option D
  5. Quick Check:

    Use response()->json() for JSON output in routes [OK]
Hint: Use response()->json() to return JSON in routes [OK]
Common Mistakes:
  • Using wrong HTTP method (POST instead of GET)
  • Returning plain string instead of JSON
  • Using echo instead of return in route
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard