>  기사  >  PHP 프레임워크  >  Laravel에서 컨트롤러를 작성하는 방법

Laravel에서 컨트롤러를 작성하는 방법

PHPz
PHPz원래의
2023-04-21 11:19:48800검색

Laravel은 개발자가 고품질 웹 애플리케이션을 빠르게 구축할 수 있도록 많은 뛰어난 기능과 ​​도구를 제공하는 최신 PHP 웹 개발 프레임워크입니다. 컨트롤러는 Laravel에서 가장 중요한 구성 요소 중 하나이며 애플리케이션의 비즈니스 로직을 처리하는 역할을 합니다. Laravel에서 컨트롤러를 작성하는 방법에 대해 이야기해 보겠습니다.

  1. Creating a Controller

Laravel에서 컨트롤러를 생성하는 것은 매우 간단합니다. 콘솔에 다음 명령을 입력하기만 하면 됩니다:

php artisan make:controller YourControllerName

여기서 YourControllerName은 생성하려는 컨트롤러의 이름입니다.

  1. 컨트롤러 코드 작성

컨트롤러 코드는 일반적으로 app/Http/Controllers 디렉터리에 있습니다. 방금 만든 컨트롤러 파일을 열면 다음 코드가 표시됩니다.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class YourControllerName extends Controller
{
    //
}

여기서 네임스페이스는 네임스페이스이고 사용은 다음과 같습니다. 참조 종류. Laravel 컨트롤러의 상위 클래스인 Controller 클래스를 상속받았으며 view(), json(), 리디렉션() 등과 같은 많은 기본 메서드를 제공합니다.

이제 자체 컨트롤러 코드 작성을 시작할 수 있습니다. 간단한 예로, 컨트롤러를 사용하여 사용자 정보를 찾고 표시한다고 가정해 보겠습니다. 그런 다음 컨트롤러 클래스에 다음 코드를 추가할 수 있습니다.

public function show($id)
{
    $user = User::find($id);
    return view(&#39;users.show&#39;, [&#39;user&#39; => $user]);
}

이 코드에서는 show()라는 메서드를 정의하고 URL에서 id 매개 변수를 전달합니다. 그런 다음 User::find($id) 메소드를 사용하여 id에 해당하는 사용자 정보를 조회하고 마지막으로 View() 메소드를 사용하여 해당 사용자 정보를 뷰 파일(파일은 resources/views에 있음)에 전달합니다. /users/show.blade.php) .

  1. 경로 정의

이제 컨트롤러 및 관련 비즈니스 로직 코드를 정의했습니다. 우리는 Laravel 애플리케이션이 이 컨트롤러에 액세스하는 방법을 알려야 하며, 이는 경로 정의를 통해 달성할 수 있습니다.

Laravel에서 경로 정의는 일반적으로 Routes/web.php 파일에 있습니다. 파일에 다음 코드를 추가할 수 있습니다.

Route::get('users/{id}', 'YourControllerName@show');

이 코드는 /users로 시작하는 URL과 일치하는 show라는 경로를 정의하고 id 매개 변수를 컨트롤러의 show() 메서드에 전달합니다.

  1. Testing

이제 컨트롤러 코드 작성과 경로 정의가 완료되었으므로 컨트롤러를 테스트해 보겠습니다.

콘솔에서 개발 서버를 시작합니다:

php artisan serve

그런 다음 브라우저에서

http://localhost:8000/users/1

를 방문하면 ID 1의 사용자 정보를 표시하는 페이지가 표시됩니다. 이 시점에서 우리는 Laravel 컨트롤러를 성공적으로 생성하고 사용했습니다.

요약:

  • 명령줄을 사용하여 Laravel 컨트롤러를 빠르게 생성하세요.
  • 비즈니스 로직을 구현하기 위한 컨트롤러 로직 코드를 작성하세요.
  • 컨트롤러에 액세스하려면 경로 정의에서 컨트롤러 메서드를 지정하세요.
  • 컨트롤러가 제대로 작동하는지 브라우저에서 테스트하세요.

위 내용은 Laravel에서 컨트롤러를 작성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.