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.