Transmissão de dados para a view no MVC em PHP
Usando o segundo parâmetro do método render
você pode transmitir dados do controlador para a
view. Os dados devem ser transmitidos
na forma de um array associativo. Neste caso, na
view, as chaves deste array se tornarão
variáveis com os valores correspondentes.
Vamos ver na prática. Vamos transmitir para a nossa view um array com três elementos:
<?php
namespace Project\Controllers;
use Core\Controller;
class PageController extends Controller
{
public function act()
{
return $this->render('page/act', [
'var1' => 'eee',
'var2' => 'bbb',
'var3' => 'kkk',
]);
}
}
?>
Como você pode ver, as chaves do nosso array são 'var1',
'var2' e 'var3'. Isso significa
que na view estarão disponíveis tais
variáveis e podemos exibir seus valores
nos lugares desejados do código HTML. Vamos fazer isso:
<div>
esta é a view
da ação act do controlador test
</div>
<ul>
<li><?php echo $var1; ?></li>
<li><?php echo $var2; ?></li>
<li><?php echo $var3; ?></li>
</ul>
Execute as manipulações descritas e então acesse nossa ação através da barra de endereços. Certifique-se de que o texto da view criada por você apareça no navegador.