Neste artigo, vou explicar os fundamentos do MVC em PHP, incluindo o que é, a estrutura básica e a implementação do MVC em PHP. Espero que ajude os iniciantes.

O que é MVC?

  • Model-View-Controller (MVC) é um padrão arquitetônico usado em engenharia de software.
  • O modelo representa as informações sobre a aplicação.
  • A visualização se assemelha a elementos da interface do usuário, como texto, botão e assim por diante.
  • O Controller executa a intercomunicação de dados e regras de negócios usadas para gerenciar os dados de e para o modelo.

Uma representação pictórica do padrão MVC.

Vamos começar com um exemplo básico usando MVC em PHP.

  • Primeiro, precisamos criar uma pasta chamada application dentro da pasta www no servidor Wamp, se você estiver usando o servidor Wamp.
  • Dentro da pasta da aplicação, crie pastas de modelo, visualização e controlador e um arquivo PHP chamado index.

Controlador

Crie um arquivo Controller.php dentro da pasta controller e copie o seguinte código nele.

[sh lang="php"]

<?php

include_once("model/Model.php");

classe Controlador {

public $modelo;

public function __construct()

{

$this->model = new Model();
}

public function invoke()

{

$reslt = $this->model->getlogin();     // chama a
função getlogin() da classe model e armazena o valor de retorno desta
função na variável reslt.

if($reslt == 'Bem-vindo ao seamedia')

{

incluir ‘view/Welcome.php’;

}

senão

{

incluir ‘view/login.php’;

}

}

}

?>[/sh]

Modelo

Crie um arquivo Model.php dentro da pasta model e copie o seguinte código para ele.

[sh lang="php"]

<?php

include_once("model/Model.php");

classe Modelo

{

public function getlogin()

{

if(isset($_REQUEST[‘user’]))

{

if($_REQUEST[‘user’]==’seamedia’)

{

return 'Bem-vindo ao seamedia';

}

senão

{

retornar 'Não aplicável';

}

}

}

}

?[/sh]

Ver

Crie dois arquivos PHP login.php e Welcome.php dentro da pasta view e copie o seguinte código para eles.

login.php

[sh lang="php"]

<html>

<head></head>

<body>

<?php

echo $reslt;

?>

<form action=”” method=”POST”>

<p>

<label>Usuário</label>

<input id="user" value="" name="user" type="text" required="required"/><br>

</p>

<p>

<button type=”submit” name=”submit”><span>Entrar</span></button>

<button type=”reset”><span>Cancelar</span></button>

</p>

</form>

</body>

</html[/sh]

Bem-vindo.php

<html>
<head></head>

<body>

<?php

echo $reslt;

?

</body>
</html>[/sh]

index.php

Abra o index.php e copie o seguinte código.

[sh lang="php"]
<?php

include_once("controller/Controller.php");

$controller=new Controller();

$controller->invoke();

?[/sh]

Saída