Installazione dell'estensione PHP per MongoDB su macOS

L'installazione dell'estensione PHP per MongoDB su macOS è una procedura che ci consente di avere un ambiente di sviluppo più completo ma che allo stadio attuale presenta un problema. In questo articolo vedremo come aggirare questo ostacolo.

L'installazione prevede l'uso di PECL dalla riga di comando. Installando PHP con Homebrew su macOS, questa utility è disponibile sotto forma del comando pecl. Ufficialmente si dovrebbe solo digitare:

sudo pecl install mongodb

L'installazione ci proporrà una serie di domande a cui è sufficiente rispondere accettando l'opzione predefinita (premendo Invio). A questo punto l'estensione verrà compilata e verrà creato il file .so e modificato il file php.ini della nostra installazione con un riferimento al file dell'estensione.

Il problema che farà fallire l'installazione consiste nel fatto che, con l'ultima versione di PHP, il percorso /opt/homebrew/Cellar/php/8.3.9/pecl/20230831/ verrà rilevato come già esistente e questo solleverà un Warning fatale.

Per risolvere il problema, occorre usare il comando rm -f (con privilegi di root) per rimuovere sia la directory 20230831 che la directory pecl. Quindi dobbiamo ricreare con il comando mkdir le directory appena rimosse (sempre con privilegi di root).Fatto questo, possiamo ripetere il processo di installazione, stavolta senza errori.

L'ultima cosa che ci resta da fare è aggiungere il percorso completo all'estensione nel file php.ini (in /opt/homebrew/etc/php/8.3), in questo modo:

extension="/opt/homebrew/Cellar/php/8.3.9/pecl/20230831/mongodb.so"

A questo punto se digitiamo php -m nella shell, vedremo che l'estensione è stata correttamente installata e rilevata.

Conclusione

L'installazione dell'estensione PHP per MongoDB richiede uno sforzo maggiore da parte nostra in quanto attualmente la procedura tramite PECL solleva un errore che dobbiamo risolvere.

Torna su