L’ottimizzazione del codice PHP è di grande importanza. Sebbene in un piccolo script le ottimizzazioni non siano quasi percettibili, lo diventano in presenza di grossi script e di un numero di utenti elevato. Ecco alcuni suggerimenti che possono esser utili nella scrittura di codice più efficiente.
- La funzione echo è più veloce di print, perché print restituisce un valore boolean, echo non restituisce niente. La funzione printf è molto più lenta sia di echo che di print, usatela solo se strettamente necessario
- Quando dovete effettuare la ricerca di una sottostringa in una stringa, strstr è molto più veloce delle funzioni preg. Se poi volete solo sapere se la sottostringa esiste, usate strpos.
- ++$i è più veloce di $i++. Questa è una caratteristica di PHP
- echo ‘hello world’ è più veloce, anche se di pochissimo, di echo “hello, world”
- $arr[‘id’] è più veloce di $arr[id]
- Se dovete scrivere un grosso pezzo di testo che non contiene variabili PHP, è meglio uscire dall’ambiente PHP (?>) e rientrare dopo (<?php).
- Le funzioni ctype sono più veloci delle espressioni regolar (vedi http://php.net/ctype ).
- Usate i percorsi completi (es: “/home/pippo/pic”) invece di quellirelativi (es: “pic”)
- Per assegnare un valore di un array a una variabile, non duplicate il valore se non strettamente richiesto, create un semplicer riferimento ($var=&$arr[‘foo’] invece di $arr[‘foo’]).
- isset($arr[‘foo‘]) è più veloce di (‘foo’, $arr)
- require_once() è utile, ma più lenta della comune require()
- Se possibile evitate di usare funzioni nei cicli es: for($i=0; $i<count($foo); $i++).
- Non usate nemmeno le quety nei cicli.Di sicuro il DB che usate ha meccanismi migliori per gestire lo stesso tipo di richiesta.
- Evitate scritture multiple sullo stesso file. Meglio collezionare i dati e scrivere tutto in una volta.
Ovviamente non è sempre possibile includere tutti questi trucchetti all’interno del codice. Quello che bisogna fare è leggerli attentamente e acquisire un metodo che permetta di programmare in maniera ottimizzata. In questo modo i programmi saranno molto più veloci e lo sforso sarà quasi nullo.


