Map-based autoloader across php and phar resources

⌈⌋ branch:  Canonic Autoloader


Artifact [f5973d2ee6]

Artifact f5973d2ee68a515ce855efafa6170655b48d5e5e:

Wiki page [Canonic Autoloader] by mario 2014-09-01 20:05:06.
D 2014-09-01T20:05:06.127
L Canonic\sAutoloader
N text/x-markdown
P 42dfce74c30102b4c3398092fa3bc074c7dea48e
U mario
W 1756
<img src=logo align=right style="margin:20pt; opacity:0.2">

<h3>Features</h3>

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

  *  Self-contained in a single compressed [Phar <span class=glyph>⎘</span>](https://php.net/phar).
  *  Can be [updated easily](wiki/update) from the command line or [implicitly](wiki/AUTOLOADER_UPDATE).
  *  Class-map based, interprets identifiers case-insensitively (as PHP does).
  *  ***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](wiki/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 public domain.


### Usage

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

     include_once("shared.phar");

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

     php ./shared.phar

Or <em>implicitly</em> on development setups by pre-declaring an [environment variable](wiki/AUTOLOADER_UPDATE).

     SetEnv AUTOLOADER_UPDATE 1

### Project

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


Z b1748459121822c8fefbb3555218e83d