Composerがだいぶ前にPSR-4に対応したらしいのでAutoloadの補完ルールを色分けした。

April 28, 2014

参考にさせて頂いた。

Fully Qualified Class Name(完全修飾されたクラス名) Namespace Prefix Base Directory Resulting File Path

\Acme\Log\Writer\FileWriter Acme\Log\Writer ./acme-log-writer/lib/ ./acme-log-writer/lib/FileWriter.php

\Aura\Web\Response\Status Aura\Web /path/to/aura-web/src/ /path/to/aura-web/src/Response/Status.php

\Symfony\Core\Request Symfony\Core ./vendor/Symfony/Core/ ./vendor/Symfony/Core/Request.php

\Zend\Acl Zend /usr/includes/Zend/ /usr/includes/Zend/Acl.php

Aura\Web を参考に

以下の composer.json 内にはResponseは出てこないんだけど、完全装飾されたクラス名\Aura\Web\Response\Statusから自動的に補完されて/path/to/aura-web/src/Response/Status.php内を探すようになっている。ピンクの部分が自動的に補完された箇所

{
    "autoload": {
        "psr-4": {
          "Aura\Web": "/path/to/aura-web/src/"
        }
    }
}

なんとなく理解した。あとはブログ書いたことを覚えてられるかな。


Profile picture

Webのフロントエンドからバックエンド、プロトタイピングからプロダクションまで。定額の開発サービスも。詳しくはAboutページで。