Originariamente inviato da cicciox80
Io cerco di organizzare il codice a funzioni, in modo da poter riutilizzare codici.
Più nel dettaglio, quando debbo sviluppare un sito dinamico, comincio col fare una pagina campione vuota (cioè col titolo, intestazione, menù, pié di pagina, stili etc.).
Ovviamente i contenuti andranno in una ben definita posizione all'interno del codice della pagina campione: quindi, posso dividere la pagina campione in due parti logiche che chiamo "testa" e "coda".
Poi faccio così: tutta la parte di codice iniziale la metto in una funzione che chiamo proprio "testa", e tutta la parte finale in una funzione di nome "coda". Le funzioni le metto poi in un file incluso in tutte le pagine (es. config.php), ed ogni pagina php avrà la chiamata alla testa, poi mostrerà il contenuto e poi chiamerà coda.
Ovviamente le funzioni possono essere parametrizzate (es. col titolo della pagina o con l'indice del menù attivo).
Alla stessa maniera, parti di codice che vengono riutilizzate le implemento come funzioni.
Come esempio, questo è il codice di una pagina di un sito sviluppato (
http://www.galleriadellamusica.it/index.php )
codice:
<?
include ('config.php');
$ddd = '';
testa(1);
stili();
?>
<? $msp = 20;
$m1 = 725;
?>
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width=<?= $msp ?>></td>
<td valign="top" width=<?= $m1 ?>>
<? box() ?>
</td>
<td width=<?= $msp ?>></td>
</tr>
</table>
<?
coda();
// FUNZIONI
function box() {
sezioneapri("Galleria della Musica");
?>
<table background="img/img_home.jpg" width="100%" height="370"><tr><td></td></tr></table>
<?
sezionechiudi();
}
?>
Un altra regola che mi imposto è quella di fare connessioni al database PRIMA di mandare l'output. Cioè, se devo caricare una lista di nomi e visualizzarli, li carico prima in un array, poi chiudo la connessione al db ed infine invio l'output. Questo per dare un minor carico al server e quindi un tempo di caricamento pagina più efficiente.