Laravel是怎麼和workbench的composer包相容的?

來源:互聯網
上載者:User
據我所知 composer是不能載入多 vendor目錄的

但是我看到很多laravelworkbench都可以載入自己vendor檔案

然後通過laravelphp artisan dump-autoload命令載入進來. 我不是很瞭解laravel的機制.

想請laravel的高手解答下!!謝謝

回複內容:

據我所知 composer是不能載入多vendor目錄的

但是我看到很多laravelworkbench都可以載入自己vendor檔案

然後通過laravelphp artisan dump-autoload命令載入進來. 我不是很瞭解laravel的機制.

想請laravel的高手解答下!!謝謝

首先,這個事情跟 Laravel 基本沒有關係。

為什麼很多人在用了 Laravel 之後發現 Laravel 有好多新特性,是因為市面上的代碼、架構都 積重難返,很多 PHP 高手都已經習慣了 PHP4 時代強大的函數和習慣用法,對 PHP 的物件導向新特性又喜歡又不想用,所以當 Taylor Otwell 這個 .NET 程式員看著 PHP 官方文檔發明了 Laravel 的時候,大家都驚呆了,PHP 還能這樣寫!

所以並不是 Laravel 強大,而是 PHP 本身就是非常強大,只是以前沒人這樣用而已。其實話說回來,PHP 本身的語言特性反而是嚴謹古板的,沒法像 Ruby 那樣非常容易地就可以做出一個 DSL(領特定領域語言)。

PHP 的檔案載入機制是非常簡單和自由的,就是 include 'fuck.php';,背後的邏輯也是簡單地把 fuck.php 裡的代碼拷貝過來放到這裡。

為了更方便地引入其他檔案,PHP 引入了 自動載入,官方文檔在:http://php.net/manual/zh/language.oop5.autoload.php

自動載入的邏輯也非常簡單,就是維護一張表,上面寫著哪個類在哪個檔案裡,方便 PHP 解譯器去 include 它。依賴 Composer 的系統通過 include /vendor/autoload.php 這個檔案來維護這張表。這個表可以手動維護。

Laravel 同時支援 psr-0psr-4 自動載入規範,他們的文檔在 http://www.php-fig.org/ 右下角。

針對這個問題,是因為 workbench 這個包修改了 類->檔案 的對應表,增加了幾行。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.