CREAR Y EJECUTAR FICHEROS PHAR EN PHP

Hace un tiempo hablé sobre los ficheros phar en php y hoy quiero hablaros de crear y ejecutar ficheros phar en php. Antes de meterse con el código hay que comprobar la configuración del fichero "php.ini" y poner la directiva "phar.readonly = On" y reiniciar el servidor. Una vez realizado este cambio ya podemos ponernos con el código:

$srcRoot = 'ruta/donde/esta/el/codigo/para/crear/el/phar';
$buildRoot = 'ruta/donde/crear/phar';

$phar = new Phar($buildRoot . '/nombreFichero.phar',
  FilesystemIterator::CURRENT_AS_FILEINFO |  FilesystemIterator::KEY_AS_FILENAME, 'nombreFichero.phar');
//el indice del array es el alias del fichero dentro del phar
$phar["ficheroAIncluirEnPHAR.php"] = file_get_contents($srcRoot . '/ficheroAIncluirEnPHAR.php');
$phar->setStub($phar->createDefaultStub('ficheroAIncluirEnPHAR.php'));
Este es un ejemplo sencillo pero se puede hacer con un directorio y varios ficheros.
Cuando se añaden varias clases a un fichero phar se puede instanciar a una de esas clases de la siguiente manera:

include 'phar://ruta_fichero_phar/nombreAliasFichero.php';
En mi página de github hay una clase para gestionar ficheros phar.