PHP e html, como não misturar? - Fórum DevMedia
PHP e html, como não misturar?
Boa tarde a todos, espero que estejam bem.
Eu vejo bastante código html e php misturado, principalmente em formularios, nesse caso especifico, tem como separar, como?
Já vi muitas discussões sobre este assunto é nuca vi um consenso sobre a questão, mas a maioria não considera uma boa prática a mistura. Não sou usuário assíduo do PHP, mas vou dar um pitaco, levando em consideração o pouco que si.
[url:descricao=PHP é um acrônimo recursivo para "PHP: Hypertext Preprocessor", originalmente Personal Home Page]https://pt.wikipedia.org/wiki/PHP[/url] então de certa forma é usual misturar do PHP com HTML. Acho que esta prática foi dissiminada, por exemplo, nos arquivos de template do Wordpress, que misturam HTML e PHP.
Sempre que possível gosto de adotar um princípio no design de software chamado "separation of concerns" (Separação de conceitos), que determina que cada parte do sistema se preocupe com uma coisa apenas.
Este princípio determina a separação em partes do seu código, assim uma parte cuida da apresentação, outra da estrutura do que está sendo apresentado, outra e cuida do conteúdo apresentado, e você pode ter ainda partes distintas para cuidar da lógica de apresentação e da lógica de negócio.
O maior problema com a mistura é dificultar manutenções futuras, o ideal seria usar arquitetura MVC, separando seu model, controller e view.
Agora é mais fácil falar que fazer. Aconselho usar o bom senso e tentar na medida do possível seraprar. Quando não for possível separar, principalemente na apresentação, tente ser o mais clean que der para ser.
Ou partir para framework´s como foi dito, já ouvi muitos elogios ao twig citado pelo William. E também já vi referências a uma biblioteca chamada Smarty.
Acho notável sua preocupação, pois a grande maioria dos iniciantes fazer um verdadeira lambança nos códigos.
Karine, Separar acho que não, principalmente no modelo procedural. No entanto para os modelos orientado a objetos, e principalmente utilizando frameworks, você consegue ter algo com uma organização muito melhor dos que os <?php?> dentro dos html.
Atualmente eu uso o Codeiginter, e ele tem como usar o template parser (https://ellislab.com/codeigniter/user-guide/libraries/parser.html) o qual você teria algo como isso
Gosto do Template Engine Twig.
Escrevi como como instalar ele com codeigniter usando composer.
A separação só funciona com ajuda de Frameworks senhores?
Bem exposto o que disse Jothaz, infelizmente é ensinado assim e aprendido tambem, depois é que sabemos que quando as "coisas" crescem, vai ficar feio, de entender, até de achar.
Fico feliz de um post fugir da mesmice, pois o padrão dos posts aqui é querer fazer sem querer aprender.
Lhe dou o parabéns por querer aprender e principalmente aprender da melhor forma possível.
Você terá êxito na sua vida profissional se continuar com esta postura.
Penso nisso, depois que me dei conta, vi alguns comentarios em posts(criticas), muitos Jothaz não se dão conta sobre as melhores praticas em PHP, como disse, praticamente não é ensinado, raros são os posts que encontramos.
Pois é, ensina-se de um jeito mas o correto é de outra forma.
Tive o mesmo problema...... vários canais para ensinar de formas diferentes....
Tenho dificuldades, infelizmente como já foi dito, me parece que não existe padrão ou como o Din citou, ensinou de diversas formas.
Infelizmente isso é comum com o PHP.
O problema é que a imensa maioria dos "mestres" que existem por ai na Web não sabem nada, ou sabem o básico do básico.
Vejo muitos posts aqui com curso, dicas e receitas que na maioria das vezes e a repetição de um mesmo tema e não agrega nada no aprendizado, mas ainda acho que é melhor termos muita informação e selecionarmos do que não ter informação nenhuma. A dica é sejam críticos, tenham bom sendo e não acreditem em nada principalmente se esta na internet.
Como toda linguagem é de certa forma laica, você tem várias forma de fazer a mesma coisa.
Isto é comum a quase a todas a linguagens, se você não conhecer acaba fazendo um de barbaridade e lambança. E o pior que funciona, então é difícil argumentar de que não é a melhor forma, pois vai sempre escutar "mas esta funcionando e é simples".
O caminho é tentar buscar aprender e discutir e principalmente não se conformar se entender o porque.
Verdade Jothaz, é assim mesmo, temos que ir atras.
pois vai sempre escutar "mas esta funcionando e é simples".
O que mata é isso tambem, se ta funcionando, deixe como está, sempre se vê assim.
Para tentar finalizar a discussão, que realmente foi boa, bastante produtiva, não podemos esperar muito desses cursos, a alternativa é: pesquisas por conta propria e foruns como este.