Ir para conteúdo
Fórum Script Brasil
  • 0

Classe: a engenharia do Laravel


Frank K Hosaka

Pergunta

Eu consegui montar o programa do orçamento no Laravel lá em 2022, mas eu não aprendi nada sobre classes. Comecei a estudar as classes em 2023, encontrei vários exemplos falando de MVC na internet. Mas foi aqui, no fórum Script Brasil em 2024, é que encontrei um código publicado pelo iOwys onde ele mostra o autoload e um roteador bastante portátil, e isso me permitiu trabalhar com as classes no diretório raiz. Aparentemente o código dele só funciona a partir do PHP 8.2.

E assim eu consegui casar um link no HTML com uma função de uma classe: 

arquivo balanceteRazao.php
<a href=?Balancete.diario.<?=$lcto->dia?>><?=date('d/m',strtotime($lcto->dia))?></a>

arquivo balancete.php
<?php
class Balancete 
{
	public function diario($dia)
	{
		$_SESSION['dia']=$dia;
		return header("location:?Diario.inicio");
	}
}

Traduzindo: o código pede para trabalhar com a data escolhida na função diario que está empilhado dentro da classe Balancete. Essa é a beleza de uma classe, ele é o único recurso que existe para amarrar um recurso do HTML com um recurso do PHP. É muito mais fácil consertar uma função do que todo o código.

Ontem, tentei introduzir a mesma ideia no Laravel.

Com a ajuda da Gemini, consegui montar o link:

arquivo resources / views / razao.blade.php
<a href="{{route('dia',$lcto->dia)}}">{{date('d/m',strtotime($lcto->dia))}}</a>

arquivo routes / web.php
<?php
Route::get('dia/{dia}',[DiarioController::class,'dia'])->name('dia');

arquivo app / Http / Controllers / DiarioController.php
<?php
class DiarioController extends Controller
{
	public function dia($dia)
    {
        session(['dia'=>$dia]);
        return redirect('diario');
    }
}

O Laravel trabalha com várias pastas para dividir as tarefas. No meu caso, eu coloquei tudo no diretório raiz, para diferenciar quem injeta os dados e quem recebe e exibe os dados, usei uma sílaba no nome dos arquivos para guardar as classes e duas sílabas para guardar os formulários em HTML:

 

Captura de tela 2024-08-09 074947.png

Editado por Frank K Hosaka
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...