2012-05-31 15 views
5

Ho una possibile domanda stupida, ma lo chiederò comunque.PHP o HTML prima o importa?

È importante ciò che viene prima, codice PHP o HTML?

Ad esempio: PHP precede l'HTML, dopo l'HTML o ha importanza?

<?php 

echo "This is text"; 

?> 


<html> 
<head> 
</head> 
<body> 
<center> 
<font size="2">This is text</font> 
</center> 
</body> 
</html> 

Oppure:

<html> 
<head> 
</head> 
<body> 
<center> 
<font size="2">This is text</font> 
</center> 
</body> 
</html> 

<?php 

echo "This is text"; 

?> 

Oppure:

<html> 
<head> 
</head> 
<body> 

<?php 

echo "This is text"; 

?> 

</body> 
</html> 
+0

Mi piace l'opzione # 4.Mantieni l'HTML e qualsiasi cosa lo controlli * separa * sia esso un "modello di widget" o "MVC" o "modello" o qualsiasi altra cosa ... (ma, solo uno dei precedenti farà ciò che è effettivamente richiesto: '' corre " in linea ".) –

+0

@ pst Grazie, apprezzo il tuo contributo. –

risposta

5

Il terzo è il modo corretto (presupponendo che si desideri che il testo echeggi nel corpo).

PHP può entrare e uscire da HTML come mostrato sopra.

<html> 
<head> 
</head> 
<body> 
<center> 
<font size="2"><?php echo "This is text"; ?></font> 
</center> 
</body> 
</html> 
+0

Grazie, lo apprezzo. –

+0

Un altro esempio utile: '

Questo è il testo un!
Questo è un testo noioso. ' C'è un modo più corretto di farlo, si può leggere su questo [qui] (http://php.net/manual/en/control-structures.alternative-syntax.php). Ma è meglio illustrare il mio punto. – demize

3

Personalmente ho messo il PHP, per quanto possibile un t la parte superiore della pagina o anche meglio al di fuori della pagina html, utilizzando le pagine html come puramente viste nel pattern MVC.

+0

Grazie, molto apprezzato. –

2

Solo lo scopo è mantenere una struttura html valida. quindi non puoi mettere nulla al di fuori del tag html. quindi la terza opzione è la cosa più valida. ma se usi qualcun altro, stamperà tutto ciò che desideri.

+0

Grazie, lo terrò a mente. –

+0

@Fred: questo non è il modo di dire grazie nello stack overflow. ;) –

+0

Sono nuovo qui (1 settimana), quindi ci vuole un po 'per abituarsi. Ho trovato/letto le FAQ taggate. Dal momento che tutte le risposte sono buone, dubito di poter accettare tutte le risposte come buone (?). Ho fatto un upvote tutto però, se funziona. –

3

Aggiungi il tuo codice php prima del codice html.

Questo permette di cambiare il tipo di fuori, le variabili requied set, aggiungere intestazioni di risposta HTTP se si richiede, ecc

Si può avere un sacco di php tag embeded tra il html.

L'html nella tua domanda non sarebbe valido se hai echeggiato l'output prima o dopo. Assicurati che il tuo out sia html valido.

Non essere cattivo con il browser solo perché proveranno a lavorare con qualsiasi cosa tu gli dai.

+0

Grazie anche a te, tutto molto apprezzato. –

2

Non essendo una persona php, proverò a farlo in senso generale. HTML è per browser e php è serveride. Quando le tue pagine raggiungono il browser, c'è solo HTML, mentre, se non sbaglio, php dovrebbe comportarsi in modo simile a jsp, a serveride html è visto come stringhe semplici che devono essere stampate allo stream. Quindi idealmente, questo non dovrebbe importare cosa viene prima.

Dal punto di vista delle buone pratiche, poiché questo è il codice php (nel mio caso jsp) il cui output sarà html, provo a dare più sensazione di java al mio file di codice.

+0

Grazie anche a te, apprezzo il tuo contributo. –

3

HTML non va da nessuna parte, ma lo script PHP viene eseguito sul server e la risposta viene restituita al client. Ora questa risposta viene visualizzata/gestita insieme al codice HTML. HTML è solo per browser in cui viene utilizzato lo script PHP per richiamare il servizio o eseguire operazioni sul database. Quindi, prima PHP (Server) e quindi HTML (Client).

+0

Grazie. La tua risposta è molto apprezzata. –