Quando si muovono i primi passi nell’apprendimento di un nuovo linguaggio di programmazione è più che normale commettere tonnellate di errori. Con PHP la solfa non cambia, posso assicurarti che anche persone esperte di questo linguaggio tendono a commettere degli errori nella stesura del loro codice.

Per migliorare le tue abilità nella scrittura di applicazioni lato server, ti snocciolo 5 consigli su PHP che non dovrai per nessun motivo dimenticare.

Visualizzare gli errori

Quando sviluppi un sito web, vuoi visualizzare tutti gli errori, alert e segnalazioni che PHP riscontra nel tuo codice, in modo da risolvere tutto e creare delle applicazioni robuste. Ignorare i messaggi che PHP ci manda è un po’ come ignorare un brutto rumore nel motore della tua macchina, prima o poi porterà ad un disastro.

Quindi per visualizzare gli errori in PHP ti basterà modificare il file php.ini modificando le seguenti righe nel modo indicato:

Se non avete la possibilità di modificare il file php.ini vi basterà scrivere 3 righe di codice PHP per modificarlo

Attivate questa funzionalità prima di scrivere 1000 linee di codice, eviterete il suicidio.

Premi il grilletto senza uccidere

Ci sono mille mila tutorial online che ti fanno usare la funzione die(), ma nel caso di errore questa funzione lascia l’utente con un inutile messaggio d’errore, lasciando il programmatore senza un minimo indizio sull’effettivo problema che si è creato durante, ad esempio, una procedura di login.

Per ovviare a questo problema dovresti utilizzare la funziona trigger_error(), la quale visualizza le impostazioni del file php.ini e di conseguenza in base al settaggio di quest’ultimi scrive nel log l’errore che si è verificato, aiutandoti a determinare la causa, portandoti nella maggior parte dei casi a risolverlo. Di seguito un piccolo esempio sul funzionamento della funzione trigger_error():

Precedenza alla sicurezza: prevenire il SQL Injection

I siti più vecchiotti, tipicamente quelli fatti col c*** hanno delle voragini per quanto riguarda la sicurezza. Questo tipo di vulnerabilità sono facili da sfruttare e possono potenzialmente corrompere e/o compromettere tutti i dati contenuti nel tuo database.

Sembra un discorso complesso, ma prevenire il SQL Injection è molto semplice. Ti basta utilizzare delle istruzioni preparate durante la scrittura delle tue query SQL e utilizzare i metodi PDO o mysqli.

Fri uguals is megl che to

Con un chiaro riferimento allo slogan in inglese maccheronico del maxibon introduco il quarto consiglio per utilizzare PHP like a pro.

Utilizzare due o tre uguali nel confronto fra variabili? Questa domanda ha creato non pochi attriti con il mio professore di laboratorio d’informatica ai tempi in cui studiavo. Lui era convinto che potessero bastare due uguali, mentre io ero e sono dell’idea che è sempre meglio abbondare (proprio come il cibo). Provate ad eseguire questo codice:

In questo codice che tu l’abbia provato o no la risposta è Uguali, perché? Il doppio uguale non confronta la tipologia della variabile, ma solo il contenuto trasformando le variabili nello stesso tipo. Nel caso dell’esempio qui sopra la stringa viene convertita nel numero 123 risultato quindi alla variabile numerica $numero.

Utilizzare tre uguali avrebbe prevenuto questo problema confrontando anche la tipologia della variabile. PHP confronta tutto a priori, sta a te dargli il comando corretto per evitare questo genere di errori.

Debugga il codice

Per un sacco di tempo ho utilizzato la funzione echo() per debuggare il codice che scrivevo. Metodo efficace ma non efficiente. La soluzione migliore è quella di utilizzare un programma con delle funzionalità avanzate. Ad esempio modificare il nome della variabile in tutto il documento oppure cliccare su una funzione ed avere la descrizione e la sua funzione. Un programma che ho usato volentieri più di una volta è PHP Storm, consigliatissimo.

Di IDE da scaricare ce ne sono da scaricare Free o a pagamento di certo il materiale non manca.

Conclusione

Ci sono tanti altri problemi che affliggono i programmatori di PHP alle prime armi, ma questi li considero i principali da cui iniziare per poter raggiungere ottimi risultati in futuro.

Cosa ne pensi? Discutiamone…