Laravel 애플리케이션이 데이터베이스에 연결하는 방법에 대한 자세한 설명

PHPz
풀어 주다: 2023-04-13 14:59:46
원래의
1612명이 탐색했습니다.

Laravel에서는 데이터베이스 연결이 우리 애플리케이션의 데이터 저장 및 관리 센터이기 때문에 매우 중요합니다. 이번 글에서는 Laravel 애플리케이션을 데이터베이스에 연결하는 방법을 자세히 설명하겠습니다.

1단계: 데이터베이스에 데이터베이스 만들기

먼저 MySQL 또는 MariaDB 데이터베이스 서버에 데이터베이스를 만듭니다. 이 예에서는 "laravel_demo"라는 데이터베이스를 생성합니다.

MySQL의 "CREATE DATABASE" 문을 사용하여 새 데이터베이스를 생성할 수 있습니다:

CREATE DATABASE laravel_demo;
로그인 후 복사

2단계: 데이터베이스 구성

이 단계에서는 Laravel에서 데이터베이스 연결을 정의해야 합니다. Laravel은 기본적으로 .env 파일을 사용하여 애플리케이션을 구성하므로 .env 파일에 다음 데이터베이스 연결 정보를 추가할 수 있습니다:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_demo
DB_USERNAME=your_db_username
DB_PASSWORD=your_db_password
로그인 후 복사

이 예에서는 MySQL을 데이터베이스 서버로 사용했으며 기본 포트는 3306입니다. 또한 데이터베이스 이름을 "laravel_demo"로 설정하고 데이터베이스 연결을 위한 사용자 이름과 비밀번호를 정의했습니다.

3단계: 데이터베이스 마이그레이션 실행

데이터베이스 연결을 구성한 후에는 Laravel의 데이터베이스 마이그레이션을 실행하여 데이터 테이블과 필드를 생성할 수 있습니다. Laravel의 데이터베이스 마이그레이션은 애플리케이션의 데이터베이스 스키마 변경을 관리할 수 있는 자동화된 데이터베이스 관리 메커니즘입니다.

데이터베이스 마이그레이션을 실행하려면 터미널의 Laravel 애플리케이션 디렉터리로 이동하여 다음 명령을 실행하세요:

php artisan migrate
로그인 후 복사

이렇게 하면 Laravel이 app/database/migrations 디렉터리에 있는 마이그레이션 파일을 실행하게 됩니다.

4단계: Eloquent ORM 사용

Laravel은 Eloquent라고 하는 매우 편리한 ORM(Object-Relational Mapping, Object Relational Mapping) 구현을 제공합니다. 이를 통해 PHP 모델 클래스를 사용하여 데이터베이스 테이블을 나타내고 모델 인스턴스를 사용하여 데이터베이스 작업을 수행할 수 있습니다.

이 예에서는 "users" 테이블을 생성했다고 가정하고 "User"라는 모델을 생성하여 해당 테이블에 액세스할 수 있습니다.

php artisan make:model User
로그인 후 복사

이 명령을 실행하면 애플리케이션에 " New model for User"라는 모델이 생성됩니다. 이제 컨트롤러에서 이를 사용하여 다양한 데이터베이스 작업을 수행할 수 있습니다.

<?php
 
namespace App\Http\Controllers;
 
use App\User;
use Illuminate\Http\Request;
 
class UserController extends Controller
{
    public function index()
    {
        // 列出所有用户
        $users = User::all();
 
        // 渲染视图并传递用户数据
        return view(&#39;users&#39;, [&#39;users&#39; => $users]);
    }
 
    public function create(Request $request)
    {
         // 创建一个新用户
         $user = new User;
         $user->name = $request->name;
         $user->email = $request->email;
         $user->save();
 
         return redirect('/users');
    }
 
    public function delete(User $user)
    {
         // 删除指定用户
         $user->delete();
 
         return redirect('/users');
    }
}
로그인 후 복사

위의 예에서는 Eloquent ORM을 사용하여 모든 사용자를 가져오고, 새 사용자를 만들고, 기존 사용자를 삭제합니다. 이 작업에서는 기본 SQL 쿼리 문을 사용하지 않았지만 Eloquent에서 제공하는 고급 쿼리 구문을 사용했다는 점에 유의해야 합니다.

5단계: 연결 오류 처리

데이터베이스에 연결할 때 오류가 발생하는 것은 드문 일이 아닙니다. 데이터베이스에 연결할 때 오류가 발견되면 Laravel의 로그를 확인하여 문제를 이해할 수 있습니다.

Laravel은 기본적으로 Storage/logs/laravel.log 파일에 로그를 저장합니다. 또한 컨트롤러나 모델의 Log 클래스를 사용하여 로그에 쓸 수도 있습니다.

use Illuminate\Support\Facades\Log;
 
Log::debug('连接数据库时发生错误:' . $exception->getMessage());
로그인 후 복사

이 예에서는 Laravel의 로깅 메커니즘을 사용하여 데이터베이스에 연결할 때 발생하는 오류를 기록합니다.

결론

Laravel은 많은 데이터베이스 관련 기능과 도구를 제공하는 강력하고 사용하기 쉬운 PHP 프레임워크입니다. Laravel 애플리케이션을 데이터베이스에 연결하는 것은 중요한 단계로, Laravel 애플리케이션에서 데이터베이스 연결 정보를 정의 및 구성하고 Eloquent ORM을 사용하여 데이터베이스를 운영해야 합니다. 물론 실제 개발 작업에서는 연결 오류 및 기타 일반적인 문제를 처리하는 방법도 알아야 합니다. 이 글이 Laravel을 데이터베이스에 연결하는 방법을 이해하는 데 도움이 되기를 바랍니다.

위 내용은 Laravel 애플리케이션이 데이터베이스에 연결하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!