
sphp - Switch PHP Versions
Utility CLI leggera per cambiare istantaneamente versione PHP (CLI + Apache) su macOS con un singolo comando
Cos'è sphp?
sphp è un'utility da riga di comando che ti permette di cambiare istantaneamente la versione di PHP sia per Apache che per la CLI con un singolo comando. Supporta PHP dalla 7.2 alla 8.3 (e le future 8.4, 8.5) ed è perfetta per sviluppatori, agenzie e chiunque gestisca più progetti PHP.
⚡ Funziona perfettamente con Homebrew e processori Apple Silicon (M1, M2, M3). Compatibile
con Apache via httpd.conf
e CLI via $PATH
.
Caratteristiche principali
Singolo comando
Cambia versione PHP per Apache e CLI con un comando
Auto-installazione
Installa automaticamente versioni mancanti con brew install php@X.Y
Sicuro
Backup automatici di tutti i file modificati
Configurazioni
Aggiorna automaticamente httpd.conf
e .zshrc
Apple Silicon
Ottimizzato per /opt/homebrew
(Intel & Apple Silicon)
Pulizia
Rimuove vecchie impostazioni opcache per evitare conflitti
Installazione
1 Prerequisiti
Assicurati di avere:
- macOS (Intel o Apple Silicon)
- Apache installato via Homebrew
- ZSH come shell (
.zshrc
deve esistere) - Homebrew configurato con prefisso
/opt/homebrew
2 Installa sphp
Esegui questi comandi nel terminale:
brew tap ThomasDanilo96/sphp
brew install sphp
3 Cambia versione PHP
sphp 8.2
Sostituisci "8.2" con la versione desiderata (7.2, 7.3, 7.4, 8.0, 8.1, 8.2, 8.3)
Come funziona
Quando esegui sphp X.Y
, lo script:
- Disabilita e collega la versione PHP corretta:
brew unlink php && brew link --force php@X.Y
- Aggiorna
/opt/homebrew/etc/httpd/httpd.conf
- Aggiunge il corretto
LoadModule
ePHPIniDir
- Riavvia Apache con
apachectl
- Aggiorna i path in
.zshrc
- Forza l'aggiornamento del terminale corrente con
export PATH=...
- Pulisce le vecchie direttive opcache
~/backup_sphp_YYYYMMDD_HHMMSS/
Versioni supportate
Versione PHP | Supportata | Auto-installazione |
---|---|---|
7.2 | ✅ | ✅ |
7.3 | ✅ | ✅ |
7.4 | ✅ | ✅ |
8.0 | ✅ | ✅ |
8.1 | ✅ | ✅ |
8.2 | ✅ | ✅ |
8.3 | ✅ | ✅ |
8.4 | ✅ | ✅ |
8.5 | 🚧 In sviluppo | ❌ |
Sicurezza
sphp è progettato per essere sicuro:
- Esegue backup di
/opt/homebrew/etc/httpd/httpd.conf
e/opt/homebrew/etc/php/X.Y/
- Pulisce
.zshrc
dai vecchi path PHP - Idempotente: sicuro da rieseguire
- Funziona anche se la versione non è installata (la installerà automaticamente)
Risorse
Licenza
MIT - usalo liberamente, miglioralo, condividilo.
Contributi
Pull request benvenute! Apri un issue o una PR se hai un'idea o una correzione. Visita il repository GitHub.