close

看完Source Code之後,我覺得PSR-4與PSR-0的最大差異,在於針對namespace與fileSystem的靈活度, 且PSR-0的class name太長了!!  folder_subfolder_subfolder_className

https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-4-autoloader-examples.md

 

可以針對不同的NameSpace去不同的Directory尋找。且有相似的namespace,則以最長的namespace先找起

以上述範例為:假設有一案例為 App\\Http\\HttpClient();   則會從composer.json中,先尋找到的位置為相符合且符合最多的"App\\Http\\" 的 app/console/ 底下尋找HttpClient.php檔案

不是從App\\對應的 app/開始找。

除非

App\\Http\\對應的 app/console/底下沒有HttpClient.php file

則  方案2.

會去尋找App\\對應到的app資料夾,然後app資料夾下的Http資料夾,然後Http資料夾下的HttpClient.php。

 

arrow
arrow
    全站熱搜

    蕭瑞文 發表在 痞客邦 留言(0) 人氣()