Oggi ho scoperto un’estensione di PHP che non conoscevo prima: si chiama Runkit.
In pratica permette di modificare a piacimento funzioni, classi, metodi e addirittura ridefinire costanti.
La sua parte migliore è però quella che riguarda la Sandbox: infatti quest’estensione può creare una sandbox per PHP, ovvero un ambiente in cui eseguire codice che non può accedere all’ambiente principale, ma l’ambiente principale può accedere all’ambiente della sandbox.
Purtroppo non è sempre possibile utilizzare questa funzionalità, in quanto richiede una patch a PHP (il che implica che vi ricompiliate PHP a manina ☹️ ).
Inoltre non penso che non ci siano molti hoster che la diano, però sarebbe troppo bello averla.
L’installazione deve essere eseguita tramite PECL. Io con PHP 5.3 su Debian ho dovuto usare questi sorgenti.
2 commenti
Runkit è uno strumento potente ed è l'ideale per costruire un proprio framework per applicazioni web.
Va aggiunto che oltre al problema delle aziende di hosting linux che non sempre supportano queste librerie di default, c'è la quasi impossibilità di recuperare le dll relative al runkit compilate per la versione windows di PHP (5.3 e maggiori).
Molti sviluppatori amatoriali o piccoli professionisti tuttavia lavorano quotidianamente con server WAMP: per questa categoria è praticamente impossibile operare con runkit.
La mia esperienza mi ha portato dopo diversi tentativi di porting delle librerie pecl su windows ad abbandonare completamente questa missione: con le versioni free di visual studio (MS Visual C++ 2010 express) nascono una serie infinita di errori di compilazione che solo chi è davvero radicato su questo prodotto MS può gestire. Ad essi la sfida…
Dal canto mio preferisco gestire tutto su server linux. É più semplice.
Un altro punto chiave su questo argomento è l'aggiornamento e la manutenzione: dal sito ufficiale http://pecl.php.net/package/runkit appare che l'ultima versione sia la beta 0.9 del 2006-06-06. Tuttavia ho trovato che uno sviluppatore (russo?) ha portato avanti l'operazione di messa a punto delle librerie e mi sono permesso di aggiungere un appunto in merito sul sito ufficiale di PHP: http://php.net/manual/en/book.runkit.php
Ciao, io Linux lo uso come sistema operativo anche sul desktop 😊 e abitualmente sviluppo sulla mia Debian per il web.
Per il momento io sto usando apache come webserver e PHP come modulo, mentre servirebbe usarlo come CGI con runkit.
Comunque in effetti anche io con PHP 5.3.x ho usato un repository su Github altrimenti avevo valanghe di errori.
A livello di produzione comunque non penso sia molto serio usare una libreria come questa attualmente, visto che non è considerata stabile… Poi chi se la sente…
Quanto agli hoster ti tocca andare di VPS o dedicato.