Map-based autoloader across php and phar resources

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


Update of "FeatureComparison"

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview

Artifact ID: a8d2b352b07b2f404618255a5ecd9958a88ca808
Page Name:FeatureComparison
Date: 2014-09-02 01:52:03
Original User: mario
Mimetype:text/x-markdown
Next 979cde52ced37195ce4daba5685d8edf82a7af1f
Content

Let me just preface this with: verdant conventions are better than no standards at all. And there's really nothing newsworthy here.
Due to the ellipses in the PSR-x documents it's however helpful to detail some semantic deviations and oversights.

Property PHP PSR-0 PSR-4 shared
Class autoloading โœ” โœ” โœ” โœ”
Zero configuration โœ” โ€Šโœ” โœ˜โ€Š โœ˜
Multiple class declarations per script โœ” โœ˜โ€Šยน โœ˜โ€Šยน โœ”
Namespace support โœ” โœ” โœ” โœ”
Multiple namespaces per file โœ” โœ˜โ€Š โœ˜โ€Š โœ”
Specific underscore treatment โœ˜ โ€Šโœ” โœ˜โ€Š โœ˜
Case-insensitive class identifiers ยฒ โœ” โœ˜โ€Š โœ˜โ€Š โœ”
Function names โœ” โฟ/โ‚ โฟ/โ‚ โœ”
Case-variant constants โœ” โฟ/โ‚ โ€Šโฟ/โ‚ โœ˜
Phar package support โœ” โœ˜โ€Šยณ โœ˜โ€Š โœ”
Versioned bundles โด โœ” โœ˜โ€Š โœ˜โ€Š โœ˜

1 = Impractical, but symlinking dependency-merged class modules would be feasible workaround.
2 = Not just accidentally on some plattforms or filesystems.
3 = For most PSR-0 autoloaders one can at least handicraft phar:// paths into the namespace registry.
4 = Not a discreet PHP or Phar feature, and resolving dependencies is certainly still best left with composer, not done at runtime.