Map-based autoloader across php and phar resources

βŒˆβŒ‹ βŽ‡ branch:  Canonic Autoloader

Build in trigger script for DPKG and RPM (untested).
mario authored 856 days ago last checkin 18e74838b
πŸ“„ LICENSE Add minimum documentation (changelog, license, readme, manpage)β€Ήβ€Ί 992 days ago
πŸ“„ NEWS Prepare 0.3.4 step release.β€Ήβ€Ί 856 days ago
πŸ“„ README Update notes about pharmap.php and addPhar(). (Section about recommenβ€Ήβ€Ί 856 days ago
πŸ“„ manpage.1 Typos in manpage.β€Ήβ€Ί 856 days ago
πŸ“„ mk Build in trigger script for DPKG and RPM (untested).β€Ήβ€Ί 856 days ago
πŸ“„ pharmap.php Tool to regenerate .phar-internal class/func `map`, which is compatibβ€Ήβ€Ί 856 days ago
πŸ“„ shared.phar Test build of 0.3.4β€Ήβ€Ί 856 days ago
πŸ“„ stub.php Build in trigger script for DPKG and RPM (untested).β€Ήβ€Ί 856 days ago
πŸ“„ update.php Skip hidden .dot directories (as in .git/* and .svn/*)β€Ήβ€Ί 999 days ago

Canonic Autoloader


shared.phar is a streets ahead PHP autoloader.

  • Self-contained in a single compressed Phar ⎘.
  • Can be updated easily from the command line or implicitly.
  • Is class-map based and handles identifiers PHP-compliant.
  • Phar collections become first class citizens, as both plain *.php scripts and phar://* packages are scanned for identifier declarations.
  • Indifferent to PSR-0/4 constraints, works atop any legacy or custom directory scheme.
  • Prepares rfc:function_autoloading userland support.
  • Can be used project-locally and for /usr/share/php handling.
  • And for deployment is just copied along with the classpath.

Also it's placed into the Public Domain.


It can be utilized easily with:


And updated manually on the command line:

 php ./shared.phar

Or implicitly on development setups by pre-declaring an environment variable.



Development State
early development stage / experimental
Releases will be announced on
Debian packages are available via