Como Instalar e Usar o Eloquent em um Projeto PHP: Exemplo de instalação e uso com a base Sakila
Como Instalar e Usar o Eloquent em um Projeto PHP: Exemplo de instalação e uso com a base Sakila
Introdução
Eloquent é o ORM (Object-Relational Mapping) do framework Laravel, mas pode ser usado independentemente em qualquer projeto PHP. Ele facilita a interação com o banco de dados ao permitir que você trabalhe com modelos de objetos em vez de escrever SQL diretamente. Neste tutorial, vamos instalar o Eloquent em um projeto PHP do zero e usá-lo com a base de dados Sakila, uma base de exemplo muito utilizada para fins educativos.
Passo 1: Configurando o Projeto PHP
1.1. Criando o Projeto
Primeiro, crie um novo diretório para o seu projeto e navegue até ele:
mkdir projeto_eloquent_sakila
cd projeto_eloquent_sakila
1.2. Inicializando o Composer
Inicie um novo projeto com o Composer:
composer init
Siga as instruções para configurar o composer.json
.
Passo 2: Instalando o Eloquent ORM
2.1. Adicionando o Eloquent como Dependência
Adicione o Eloquent ao seu projeto através do Composer:
composer require illuminate/database
2.2. Configurando o Eloquent
Agora, vamos configurar o Eloquent no seu projeto. Crie um arquivo chamado database.php
no diretório raiz do projeto para configurar a conexão com o banco de dados:
<?php
use Illuminate\Database\Capsule\Manager as Capsule;
require 'vendor/autoload.php';
$capsule = new Capsule;
$capsule->addConnection([
'driver' => 'mysql',
'host' => '127.0.0.1',
'database' => 'sakila',
'username' => 'root', // Coloque seu usuário do MySQL
'password' => '', // Coloque sua senha do MySQL
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
]);
$capsule->setAsGlobal();
$capsule->bootEloquent();
2.3. Importando a Base de Dados Sakila
Se ainda não tem a base de dados Sakila, você pode baixá-la e importá-la no MySQL através dos seguintes comandos:
-
Baixe a base de dados Sakila aqui.
-
Importe o arquivo SQL para o MySQL:
mysql -u root -p < caminho/para/sakila-schema.sql
mysql -u root -p sakila < caminho/para/sakila-data.sql
Passo 3: Usando o Eloquent com a Base de Dados Sakila
3.1. Criando um Modelo Eloquent
Vamos criar um modelo para a tabela film
da base Sakila. Crie um arquivo chamado Film.php
no diretório app/Models
:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Film extends Model
{
protected $table = 'film';
protected $primaryKey = 'film_id';
public $timestamps = false;
}
3.2. Consultando Dados com Eloquent
Agora, vamos criar um arquivo index.php
no diretório raiz do projeto para consultar alguns dados da tabela film
:
<?php
require 'database.php';
use App\Models\Film;
// Recupera todos os filmes
$films = Film::all();
foreach ($films as $film) {
echo $film->title . "<br>";
}
3.3. Inserindo Dados com Eloquent
Para inserir um novo filme, adicione o seguinte código no index.php
:
$newFilm = new Film();
$newFilm->title = 'New Movie';
$newFilm->description = 'An awesome new movie';
$newFilm->release_year = 2024;
$newFilm->save();
echo "Filme adicionado com sucesso!";
3.4. Atualizando Dados com Eloquent
Para atualizar um registro existente, você pode fazer o seguinte:
$film = Film::find(1);
$film->title = 'Updated Movie Title';
$film->save();
echo "Filme atualizado com sucesso!";
3.5. Deletando Dados com Eloquent
Para deletar um registro:
$film = Film::find(1);
$film->delete();
echo "Filme deletado com sucesso!";
Conclusão
Eloquent facilita muito a interação com bancos de dados em projetos PHP, permitindo que você trabalhe de forma mais intuitiva com dados sem precisar escrever SQL diretamente. Neste post, mostramos como instalar e configurar o Eloquent, além de realizar operações básicas como leitura, inserção, atualização e deleção de registros, utilizando a base de dados Sakila como exemplo.
Referências
Este conteúdo será uma ótima adição ao seu curso PHP, proporcionando aos seus alunos uma compreensão prática de como utilizar um ORM como Eloquent para interagir com bancos de dados de forma eficiente.
Deixe seu comentário
Posts RELACIONADOS
Como Criar um Chat em Tempo Real com PHP e WebSockets
Neste tutorial, você aprenderá como criar um sistema de chat em tempo real utilizando WebSockets com PHP para o backend e HTML, CSS e JavaScript...
Introdução ao MySQL: Consultas Básicas com o Banco de Dados Sakila
MySQL é um dos sistemas de gerenciamento de banco de dados mais populares e amplamente utilizados no desenvolvimento web. Neste post, exploraremos os conceitos básicos...
Gerenciando Sessões com $_SESSION em PHP: Como Armazenar e Recuperar Dados
Introdução
Quando desenvolvemos aplicações web, muitas vezes precisamos manter informações de um usuário ativo durante toda a sua navegação no site, como por exemplo, dados de...Implementando MVC com Composer em PHP: Estrutura Completa com Arquivo de Rotas
Neste post, vamos explorar como estruturar um projeto PHP utilizando o padrão MVC (Model-View-Controller) e o Composer para gerenciar dependências. Abordaremos a configuração inicial, a...
Introdução à Programação Orientada a Objetos (POO) em PHP: Conceitos e Exemplo Prático
Introdução
A Programação Orientada a Objetos (POO) é um paradigma de programação que utiliza "objetos" para representar dados e funcionalidades. Em PHP, a POO é uma...Como Criar Funções em PHP: Guia com Exemplos Práticos
Neste post, você aprenderá como criar e utilizar funções em PHP. Vamos explorar a sintaxe básica, os parâmetros, valores de retorno e como as funções...
Realizando Requisições POST com PHP: Guia e Formulário de Exemplo
Neste post, você aprenderá como realizar requisições POST em PHP, enviando dados de um formulário HTML para o servidor. Vamos abordar a criação de um...
Requisições GET com PHP: Guia Completo com Exemplo de Formulário
Neste post, você aprenderá como realizar requisições GET em PHP. Vamos explorar a estrutura de uma requisição GET, criar um exemplo de formulário e mostrar...
Iniciando um Projeto PHP com Composer: Um Guia Prático
Neste post, você aprenderá como iniciar um projeto PHP do zero utilizando o Composer. Vamos cobrir a instalação do Composer, criação de um novo projeto,...
Explorando Arrays em PHP: Manipulação de Dados de Forma Eficiente
Neste post, você aprenderá sobre arrays em PHP, uma estrutura de dados fundamental. Vamos explorar a criação, manipulação e iteração de arrays, além de ver...