Map-based autoloader across php and phar resources

⌈⌋ ⎇ branch:  Canonic Autoloader


Artifact [3faa122ccd]

Artifact 3faa122ccd6036bc588f86830aaf5041ef62e1d9:

Wiki page [Canonic Autoloader] by mario 2014-03-19 00:08:31.
D 2014-03-19T00:08:31.260
L Canonic\sAutoloader
N text/x-markdown
P 30317a4152bd4033cb1b38473ed68a83887d0688
U mario
W 1734
<h3>Features</h3>

<kbd>[shared.phar](finfo?name=shared.phar)</kbd> is a streets ahead PHP autoloader.

  *  Self-contained in a single compressed [phar](https://php.net/phar)
      *  Can be [updated easily](wiki/update) by invoking it from the command line
         *  The phar may also be [split up](wiki/split)
  *  Based on a class map
      *  Interprets identifiers case-insensitively (as PHP does)
         *  Prepares [rfc:function_autoloading](wiki/rfc:function_autoloading) userland support
  *  ***Phar collections** become first class citizens*
      *  *Tokenizes* plain `*.php` and `phar://*` includes for identifier declarations
         *  Indifferent to PSR-0/4 constraints, works atop any legacy or custom directory scheme
  *  Is meant for `/usr/share/php` handling
      * But can be used project-locally just as well
         * And for deployment is just copied along with the class structure.
       

Also it's public domain.


### Usage

It can be [utilized](wiki/include_once) easily with:

     include_once("shared.phar");

And [updated](wiki/update) manually on the command line:

     php ./shared.phar

Or implicitly on development setups by declaring an [`AUTOLOADER_UPDATE`](wiki/AUTOLOADER_UPDATE) environment variable.


### Project

<dl>
  <dt><b>Development</b></dt>
  <dd><tt>shared.phar</tt> is still in an early development stage.</dd>
  <dt><b>Releases</b></dt>
  <dd>Releases will be announced on <a href="http://freecode.com/projects/sharedphar">http://freecode.com/projects/sharedphar</a></dd>
  <dt><b>Packages</b></dt>
  <dd>Debian packages are available via <a href="http://apt.include-once.org/">http://apt.include-once.org/</a></dd>
</dl>


Z 201c82421d9f096acfc6d9059e87cab9