Seppure la sintassi di PHP non preveda strette condizioni sull'indentazione e sullo stile in cui il codice deve essere scritto, questo non toglie che una impostazione il più possibile chiara e sistematica della modalità di scrittura, di naming delle variabili e in generale la definizione "interna" di alcune semplici regole e convenzioni possano agevolare, soprattutto quando diversi sviluppatori lavorano sullo stesso progetto.
Può sembrare banale, soprattutto a chi abbia già famigliarità con altri linguaggi di programmazione, ma l'indicazione principale è commentare e documentare il codice, questo spesso può sembrare fastidioso e inutile soprattutto ai programmatori "esperti", ma questo atteggiamento cambia immediatamente quando si debba riprendere codice scritto da altri o scritto da noi stessi alcuni mesi addietro.
Cercare di mostrare un codice chiaro utilizzando spazi, tab e lasciando una sola istruzione per linea, oltre che utilizzare i separatori di blocco {...}
anche quando non strettamente necessari non influisce sull'esecuzione del nostro programma ma rende la vita più semplice...
if ($questo==$quello)foreach($cio as $questo)echo $cio."
";
risulta sicuramente piu bello e sicuramente più manutenibile se scritto in questo modo:
if ($arr_questo==$arr_quello)
{
# output dei valori contenuti nell'array $arr_questo
foreach ($cio as $arr_questo)
{
echo $cio."
";
}
}
Cerchiamo sempre di ridurre al minimo l'utilizzo di if
nidificati, spesso è possibile avere un codice molto più leggibile e "risparmiare" indentazione separando i vari controlli condizionali, consideriamo questo esempio:
if ($autenticato)
{
if ($amministratore)
{
if ($nome == "Mario")
{
print "Bentornato Padrone $nome";
}
else
{
print "Questa area è riservata";
}
}
else
{
return false;
}
}
else
{
return false;
}
che può essere invece molto più lineare se scritto in questo modo
if (!$autenticato)
{
return false;
}
if (!$amministratore)
{
return false;
}
if ($nome == "Mario")
{
print "Bentornato Padrone $nome";
}
else
{
print "Questa area è riservata a Mario";
}
Buona cosa è anche sfruttare la flessibilità della sintassi di PHP che non costringe a scrivere un comando tutto su una sola riga, se ben utilizzata questa caratteristica ci fornisce un'ulteriore incremento a livello di leggibilità e quindi (prima o poi...) di risparmio di tempo e incremento di produttività:
$sql = "
SELECT nome, cognome, indirizzo, provincia,
telefono, data_nascita
FROM utenti
WHERE cognome LIKE 'P%'
AND provincia = 'VC'
";
la stringa contenente la query SQL potrà essere passata tranquillamente come parametro ad esempio alla funzione mysql_query()
permettendo a chi legge il codice di focalizzare immediatamente dove tale stringa viene impostata.
Scrittura di codice ottimizzato: stile, sicurezza, procedure di debug, performance.