2012-11-13 17 views
6

Quando si codifica PHP insieme all'HTML, sembra sempre confusionario e molto doloroso da guardare. La struttura non è facile da capire.come codice bello PHP insieme con HTML?

Qualcuno può dire come codificare PHP con HTML in una buona struttura? php code

+7

Tale strano mix di caratteri di larghezza del char fissi e non fissi! – zerkms

+0

Un sacco di gente usa i motori dei modelli proprio per questo motivo. Tendo a scrivere una pagina interamente come PHP, ma in genere non sto lavorando anche su siti statici basati sul contenuto. – Brad

+1

Stai usando il rosso e il blu sia per HTML che per PHP, che è davvero fonte di confusione. Io uso set di colori completamente diversi per questi ed è quasi impossibile perdersi. –

risposta

6

Ci sono metodologie che aiutano a risolvere questo problema, come Model-View-Controller (MVC). MVC separa il tuo livello dati, dalla tua logica, dai tuoi livelli di presentazione (UI). Un framework come CodeIgniter potrebbe aiutarti in questo caso. Anche se non avevate intenzione di utilizzare un framework esistente, separare i vostri modelli di dati dalla vostra logica aziendale e quindi dagli oggetti dell'interfaccia utente è relativamente facile.

Modifica: diciamo che hai una pagina del carrello. È possibile avere un file "vista" chiamato cart.php, e quindi è possibile inviare le informazioni dagli altri file PHP (i "Titolari"), in modo che invece di questo:

<div id = 'special_price'> 
<?php $result = mysql_query("SELECT price FROM pricelists"); 
$row = mysql_fetch_assoc($result); 
echo $row["price"]; 
?> 
</div> 

si può fare questo:

<div id = 'special_price'><?= $price ?></div> 

In questo scenario, tutti gli accessi logici e dati vengono gestiti prima di tentare di visualizzare la pagina.

+2

+1 Evviva per aver suggerito di evitare completamente l'approccio del parafango! –

+1

grazie mille. la tua risposta è profetica – linjuming

1

@ ajacian81 ha ragione, ma ci sono opzioni aggiuntive. Il modo in cui ha menzionato è quello di scrivere tutto il codice in base a un framework MVC. L'architettura MVC è un ottimo modo per separare le preoccupazioni delle applicazioni Web complesse. MVC separa la logica dell'applicazione, la logica del database e le viste in 3 punti separati. Tuttavia, il refactoring di un codebase php + html intermixato in un framework MVC può richiedere molto tempo. Se sei interessato a rimuovere php dal tuo html senza eseguire completamente il refactoring della tua base di codice, considera l'utilizzo di un motore di template come Twig o Smarty.

Se si utilizza un motore di modelli, è possibile separare php e sql in un'unica posizione e i propri modelli html in un'altra posizione. Se si utilizza un framework MVC, è necessario separare php, sql e html in 3 posizioni diverse. Se le tue priorità sono di natura a breve termine, basta usare un motore di template. Se le tue priorità sono di natura a lungo termine, prendi in considerazione il refactoring del tuo codice in un framework MVC.

-2

Php è diventato così avanzato che non otterrete nulla utilizzando una convinzione Framework per le build personalizzate. Se commentate i vostri script e ogni inizio e fine di ogni sezione di html e php sarete sorpresi di quanto velocemente e di quanti meno file ci vogliono per gestire un sito Web completo o un portale di social business. Uso solo tre file principali: config.php, ini.php che memorizza tutte le mie sessioni e cookie e db_connect.php. Tutte le mie visualizzazioni di pagina sono gestite da Ajax senza aggiornamento della pagina e tutti i miei moduli sono portati in alcune di queste viste per utilizzare Ajax senza aggiornamento della pagina. Ho praticamente usato Ajax per tutta la mia richiesta di URL che elimina la necessità di strutture voluminose.

Problemi correlati