Per sviluppare in PHP non sono necessari di molti strumenti, il set up della macchina è piuttosto veloce e si è operativi in breve tempo. Vediamo di quali soluzioni abbiamo bisogno:
- un server Web;
- PHP;
- un editor di testo;
- un browser per la navigazione Internet;
- un gestore di database per l'eventuale interazione con i dati.
Server Web e PHP
La scelta del server Web dipende innanzitutto dal sistema operativo su cui si sta lavorando. Nonostante sia preferibile che i nostri script girino su un server Linux, possiamo tranquillamente progettarli sulla nostra macchina, indipendentemente dal sistema operativo installato.
Un server Web non è fondamentale per creare uno script PHP dato che il linguaggio può essere eseguito anche da riga di comando. Diventa però necessario per realizzare script che operino sul Web dato che abbiamo la necessità di uno strumento che riceva le richieste HTTP e invii le risposte al client.
Alcuni dei server Web più diffusi sono al momento Apache ed nginx. Apache resta sicuramente il più utilizzato a livello mondiale, la maggior parte delle guide online sono appunto dedicate a questo server Web, ma nginx sta prendendo sempre più piede grazie all'elevato livello di prestazioni che è in grado di garantire. Quest'ultimo infatti è più leggero e veloce di Apache ma, dato che dovremo lavorare sulla nostra macchina e non su un server Web reale, possiamo tranquillamente scegliere uno dei due.
Vedremo nella prossima lezione come installare Apache, PHP e anche un Database Manager System MySQL sulla nostra macchina.
Software per l'installazione automatica dell'ambiente di sviluppo
Nel caso in cui non sussistano esigenze particolari, sono presenti in Rete anche numerosi PHP development environment che installano e configurano automaticamente i software ed i servizi di cui abbiamo bisogno; Alcuni sono cross-platform, quindi disponibili per ogni sistema operativo, altri sono specifici per una piattaforma. E' possibile proporne alcuni, includendo i sistemi operativi supportati:
Software | MAC | Windows | Linux |
---|---|---|---|
AMPPS | X | X | X |
WAMP | X | ||
XAMPP | X | X | X |
MAMP | X | X |
AMPPS è un software che consente di installare automaticamente Apache, MySQL, PHP, il linguaggio Python e Softaculous (una script library che automatizza l'installazione di Web applications in un sito Internet). Ha un'ottima interfaccia di amministrazione che consente ai neofiti di installare anche i principali framework e CMS (Content Management System, o "sistemi per la gestione dei contenuti") come per esempio WordPress, Joomla, Symfony ecc., occupandosi anche di farci scegliere per ognuno di essi le credenziali di accesso all'area admin e al database. È una soluzione cross-platform, quindi installabile indipendentemente dal sistema operativo corrente.
WAMP è un development tool per Windows che installa e configura per noi Apache, MySQL e PHP. Utile l'interfaccia sulla barra vicino all'orologio di sistema con cui è possibile cambiare la versione dei vari software o abilitare/disabilitare le singole estensioni di Apache e PHP.
XAMPP installa su tutti i sistemi operativi Apache, MySQL, PHP e Python, attraverso il Package management system Bitnami consente, come AMPPS, di installare sulla nostra macchina i principali CMS con qualche click.
MAMP è nato per piattaforme Apple, in seguito però è stata rilasciata anche una versione per Windows. Contiene al suo interno Apache, MySQL, PHP, Python e il linguaggio PERL.
Installare il server Web integrato di PHP
Un'ultima possibilità nel caso non si volesse installare un Web server esterno, è quella di utilizzare il Web server integrato di PHP.
Nel caso si stia utilizzando un sistema operativo della Apple sarà già tutto installato di default e non di dovrà fare nulla, nel caso in cui fossimo su piattaforma Windows dovremo scaricare i binari dal sito del PHP, infine, nel caso di un sistema operativo basato sul Kernel Linux come per esempio Ubuntu, saranno sufficienti le tre istruzioni seguenti lanciate dalla command line:
sudo add-apt-repository ppa:ondrej/php5
sudo apt-get update
sudo apt-get install php5
Una volta installato PHP, verifichiamo che tutto sia andato per il verso giusto attraverso il comando:
php --version
A questo punto possiamo avviare il Web server con il comando:
php -S localhost:8000 -t ~/public_html/
Tramite il parametro t
possiamo indicare la document root, ovvero la cartella da cui leggere i file, possiamo anche personalizzare la porta in ascolto, semplicemente modificando il valore "8000" sostituendolo con un altro.
Creiamo quindi un file index.html
con del testo di prova all'interno della cartella e apriamo il nostro browser all'indirizzo http://localhost:8000/. Visualizzeremo a questo punto il contenuto del file appena creato.
Gli Editor di testo
Per scrivere il codice dei nostri script non abbiamo bisogno di particolari software ma è sufficiente un qualsiasi editor di testo. È preferibile però utilizzare un editor che supporti l'indentazione e la colorazione del codice, in maniera rendere più leggibili i sorgenti.
Tra gli editor di testo più noti abbiamo:
- Notepad++ per Windows (free);
- PsPad per Windows (free);
- Sublime per Windows, Linux e Mac (free);
- Atom per Windows, Linux e Mac (free);
- Dreamweaver per Windows e Mac (premium);
- Coda per Mac (premium);
- VIM per Linux, Windows e Mac (free).
Notepad++ e PsPad sono stati probabilmente i più famosi editor per Windows. Entrambi consentono di installare plugin che aggiungono funzionalità e supporto ai vari linguaggi di programmazione.
Sublime è un editor multipiattaforma che sta riscuotendo sempre più successo. I suoi punti di forza sono le prestazioni e un Package Manager che consente di personalizzare ampiamente sia le funzionalità che l'aspetto grafico del software.
Atom è un software realizzato dai creatori del servizio per il code hosting GitHub che riprende molte delle feature di Sublime. È customizzabile in ogni sua forma ed in continua evoluzione. Attualmente, però, non supporta file di dimensioni maggiori ai 2MB.
Dreamweaver è l'editor di casa Adobe. Probabilmente uno degli editor premium più famosi e utilizzati di sempre.
Coda è un software per Mac molto potente. Uno dei suoi punti di forza è la possibilità di connettersi automaticamente in FTP o in SSH al server, oppure di eseguire direttamente query SQL sul nostro database.
VIM è una versione più potente e con interfaccia grafica del famosissimo editor VI distribuito nella quasi totalità dei sistemi UNIX. Anch'esso è multipiattaforma ed è consigliatissimo per chi desidera sviluppare con le combinazioni da tastiera; un po' meno per chi è alle prime armi.
Gli IDE
Nel caso in cui siano necessari strumenti più avanzati come l'autocompletamento del codice, si potrebbe preferire un IDE al semplice editor di testo. Gli IDE (Integrated Development Environment) sono software che aiutano i programmatori a sviluppare codice attraverso l'autocompletamento delle funzioni, dei metodi delle classi, tramite la colorazione del codice o la segnalazione di errori di sintassi senza dover eseguire il codice per individuarli.
Alcuni degli IDE più noti sono i seguenti, tutti multipiattaforma:
- PHPStorm (premium);
- NetBeans (free);
- Eclipse (free);
- Aptana Studio (free);
- Zend Studio (premium).
PHPStorm è uno degli IDE più completi attualmente sul mercato. Nonostante il suo nome possa trarre in inganno, non supporta solo PHP ma vari linguaggi. Gli strumenti messi a disposizione sono davvero tantissimi così come le estensioni rilasciate dalla community.
NetBeans e Eclipse nascono come IDE per sviluppare Java ma, grazie alla community rilasciano dei pacchetti che supportano PHP.
Aptana Studio è un altro IDE orientato allo sviluppo Web, basato su Eclipse, fornisce un'interessante set di strumenti che semplificano la vita dello sviluppatore.
Zend Studio è un ambiente di sviluppo anch'esso molto potente rilasciato da Zend, la software house che più ha contribuito negli anni al successo del PHP e che ha sviluppato Zend Framework.