Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

patrick_3d

Qual a melhor forma de separar o HTML do PHP?

Recommended Posts

Boas,

 

 

Podem me dizer qual a melhor maneira de separar o html do php??

 

 

Em vez de programar assim:

 

<div class="menu">

if($teste=="1"){

echo "teste";

}else{

echo "teste1";

}

</div>

 

 

 

tudo misturado , alguem sabe?

 

muito obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Patrick

 

Tudo pelo "simples" e claro, pois geralmente o html e o css vão dar glamour no seu site e o php deverá faze-lo dinamico.

 

Muitos gostam de até colocar partes que seriam um html puro dentro de uma variável do php, isto se mistura muito na hora de editar seu código php, pois o php é para dar dinâmica ao site, resultados, guardar dados temporários, e o html seria o agente de exibição.

 

um abraço

 

Edivaldo Lins Macedo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode usar assim:

<?php function Menu() { ?>
//Aqui o Menu
<input type="button" value="Home" id="home" />...
<?php } ?>

e no html ficaria assim:

<div class="menu"><?php Menu(); ?></div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode utilizar um motor de template, como por exemplo: EJS. http://embeddedjs.com/

 

Porém, para isso, você precisa realizar as requisições HTTP via AJAX.

 

Então você vai ter:

PHP <--> JavaScript <--> EJS.

-

Apresentação

 

Os dados serão objeto JSON; com ele você consegue realizar qualquer interação dentro de um EJS; E as tags, em vez de <?php ?>, ficará <% %>.

 

Caso não entendeu a idéia, pode enviar um e-mail -> thiago.mx2012@gmail.com que eu posso explicar melhor :).


E sobre o MVC no contexto WEB -> http://activedeveloper.info/mvc-is-a-lie.html

Compartilhar este post


Link para o post
Compartilhar em outros sites

Podem me dizer qual a melhor maneira de separar o html do php??

Conte por que você quer fazer isso?

 

O PHP nasceu para ser incluído no HTML, não é à toa que PHP é um acrônimo para HTML Pre-processor.

 

Alguns dizem que a PHP como linguagem de template é "feio". Eu discordo. Principalmente se você utilizar a sintaxe alternativa:

 

foreach($var as $key => $val):
endforeach;

if($var):
endif;
Não tem problema nenhum "misturar" PHP com HTML se o código contiver apenas lógica de apresentação.

 

O problema é misturar camadas, colocar uma consulta ao banco de dados no mesmo lugar onde você ecoa tags HTML.

 

Template engines, como Twig e Smarty, são legais também, normalmente possuem alguns "atalhos" que facilitam a criação de templates, mas têm uma certa curva de aprendizagem.

 

O Twig não possui nenhum overhead em relação ao PHP puro pois todos os templates são "compilados" em arquivos PHP. Não conheço muito do Smarty, sei que ele possui um sistema de cache, mas acho que não é tão eficiente quanto o do Twig.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.