O que é phtml e quando devo usar uma extensão .phtml em vez de .php?

233

Eu estou querendo saber qual é a diferença entre arquivos .phtml e .php e quando usar um sobre o outro.

fvgs
fonte

Respostas:

316

Geralmente não há diferença, no que diz respeito à renderização da página. É uma enorme instalação do lado do desenvolvedor, no entanto, quando o seu projeto na web cresce.

Faço uso de ambos desta maneira:

  • A página .PHP não contém código relacionado à exibição
  • A página .PHTML contém pouca (se houver) lógica de dados e a maior parte dela é relacionada à apresentação
Alex
fonte
74
Tudo bem, então usar a extensão .phtml em vez de .php seria apenas uma formalidade usada para indicar um arquivo mais denso em html do que php.
Fevgs 08/08
12
Precisamente. Aproveitando o fato de que uma extensão de arquivo diferente pode ser associada a um ícone diferente, você também pode diferenciá-las sem esforço (trabalhar com dezenas ou centenas de arquivos, apenas organizá-las na pasta nem sempre é suficiente).
Alex8
Há também o arquivo de origem PHP .phps.
precisa saber é o seguinte
que .PHTMLainda funcionam. i escreveu o seguinte pedaço de código e salva-lo com .phtml e não executar a parte php <html> <body> <?php echo "hiiii"; ?> <div> <strong> everybody </strong> </div> </body> </html>
dhpratik
1
@dhpratik Verifique a configuração do servidor, a extensão provavelmente não está sendo tratada corretamente. Se a configuração parece bem, isso é melhor como uma pergunta SO em sua própria
Alex
101

.phtmlfoi a extensão de arquivo padrão para os programas PHP 2. .php3assumiu o PHP 3. Quando o PHP 4 saiu, eles mudaram para uma sequência .php.

As extensões de arquivo mais antigas ainda são usadas algumas vezes, mas não são tão comuns.

Quentin
fonte
31

É um arquivo ext que algumas pessoas usaram por um tempo para denotar que era HTML gerado por PHP. Como servidores como o Apache não se importam com o que você usa como um arquivo ext, desde que seja mapeado para alguma coisa, você pode prosseguir e chamar todos os seus arquivos PHP .jimyBobSmith e seria feliz em executá-los. PHTML passou a ser uma tendência que pegou por um tempo.

Fluffeh
fonte
24
+1 para .jimmybobsmith Eu posso fazer isso uma vez para confundir muitas pessoas da equipe que não sabem disso.
o_O
Você precisa registrar a extensão no seu apache.conf / httpd.conf, embora ... outro truque seja includeo arquivo com qualquer extensão do php, ele será executado como o php de qualquer maneira.
SparK 18/01/19
17

Para dar um exemplo do que Alex disse, se você estiver usando Magento, por exemplo, os arquivos .phtml são encontrados apenas na área / design como arquivos de modelo e contêm linhas HTML e PHP. Enquanto isso, os arquivos PHP são código puro e não possuem linhas de HTML.

CommaToast
fonte
6

Os arquivos .phtml informam ao servidor da web que são arquivos html com conteúdo dinâmico gerado pelo servidor ... exatamente como os arquivos .php em um navegador se comportam. Portanto, no uso produtivo, você não deve ter nenhuma diferença entre arquivos .phtml e .php.

Soundz
fonte
5
phtmlgeralmente nunca eram acessados ​​diretamente. Além disso, phtmlgeralmente não é configurado como extensão PHP válida na maioria dos servidores da web.
KingCrunch 8/08/12
0

Você pode escolher qualquer extensão no mundo se configurar o Apache corretamente. Você pode usar .html para fazer PHP se você configurar na sua configuração do Apache.

Em conclusão, a extensão não tem nada a ver com o aplicativo ou site em si. Você pode usar o que deseja, mas normalmente usa .php (para não reinventar a roda)

Mas em 2019, você deve usar o roteamento e esquecer a extensão no final.

Eu recomendo que você use o Laravel.

Em resposta a @KingCrunch: True, o Apache não o usa por padrão, mas você pode usá-lo facilmente se alterar a configuração. Mas isso não é recomendado, pois todos sabem que não é realmente uma opção.

Eu já vi arquivos .html que executavam o PHP usando a extensão html.

WtrndMOB
fonte