<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                * * * * * [TOC] ## 簡介 `Laravel`?默認的目錄結構意在為構建不同大小的應用提供一個好的起點,當然,你可以自己按照喜好組織應用目錄結構,`Laravel`?對類在何處被加載沒有任何限制 -- 只要?`Composer`?可以自動載入它們即可。 #### 為什么沒有?`Models`?目錄? 許多初學者都會困惑 Laravel 為什么沒有?`models`?目錄,當然,這是 laravel 故意為之,因為?`models`?這個詞對不同開發者而言有不同的含義,容易造成歧義,有些開發者認為應用的模型指的是業務邏輯,還有些開發者則認為模型指的是與關聯數據庫的交互。 正是因為如此,我們默認將 Eloquent 的模型放置到?`app`?目錄下,從而允許開發者自行選擇放置的位置。 ## 根目錄 #### `app`?目錄 `app`?目錄,如你所料,這里面包含應用程序的核心代碼。另外,你為應用編寫的代碼絕大多數也會放到這里, 我們之后將很快對這個目錄的細節進行深入探討。 #### `bootstrap`?目錄 `bootstrap`目錄包含了幾個框架啟動和自動加載設置的文件。`cache`?文件夾用于包含框架為提升性能所生成的文件,如路由和服務緩存文件。 #### `config`?目錄 `config`?目錄,顧名思義,包含所有應用程序的配置文件。通讀這些配置文件可以應對自己對配置修改的需求。 #### `database`?目錄 `database`?目錄包含了數據遷移及填充文件,你還可以將其作為 SQLite 數據庫的存放目錄。 #### `public`?目錄 `public`?目錄包含了 Laravel 的 HTTP 入口文件?`index.php`?和前端資源文件(圖片、JavaScript、CSS等)。 #### `resources`?目錄 `resources`?目錄包含了視圖、原始的資源文件 (LESS、SASS、CoffeeScript) ,以及語言包。 #### `routes`?目錄 `routes`?目錄包含了應用的所有路由定義。Laravel 默認提供了三個路由文件:`web.php`,?`api.php`, 和?`console.php`。 `web.php`?文件里定義的路由都會在?`RouteServiceProvider`?中被指定應用到?`web`?中間件組,具備 Session 、CSRF 防護以及 Cookie 加密功能,如果應用無需提供無狀態的、RESTful 風格的API,所有路由都會定義在?`web.php`文件。 `api.php`?文件里定義的路由都會在?`RouteServiceProvider`?中被指定應用到?`api`?中間件組,具備頻率限制功能,這些路由是無狀態的,所以請求通過這些路由進入應用需要通過 API 令牌進行認證并且不能訪問 Session 狀態。 `console.php`?文件用于定義所有基于閉包的控制臺命令,每個閉包都被綁定到一個控制臺命令并且允許與命令行 IO 方法進行交互,盡管這個文件并不定義 HTTP 路由,但是它定義了基于命令行的應用入口(路由)。 #### `storage`?目錄 `storage`?目錄包含編譯后的 Blade 模板、基于文件的 session、文件緩存和其它框架生成的文件。此文件夾分格成?`app`?、`framework`?,及?`logs`?目錄。`app`?目錄可用于存儲應用程序使用的任何文件。`framework`?目錄被用于保存框架生成的文件及緩存。最后,`logs`?目錄包含了應用程序的日志文件。 `storage/app/public`?可以用來存儲用戶生成的文件,例如頭像文件,這是一個公開的目錄。你還需要在?`public/storage`?目錄下生成一個軟連接指向這個目錄,你可以使用?`php artisan storage:link`?來創建軟鏈接。 #### `tests`?目錄 `tests`?目錄包含自動化測試。Laravel 推薦了一個?[PHPUnit](https://phpunit.de/)?例子。每一個測試類都需要添加?`Test`?前綴,你可以使用?`phpunit`?或者?`php vendor/bin/phpunit`?命令來運行測試。 #### `vendor`?目錄 `vendor`?目錄包含所有?[Composer](https://getcomposer.org/)?依賴。 ## `app`?目錄 應用的核心代碼位于?`app`?目錄下,默認情況下,該目錄位于命名空間?`App`?下, 并且被 Composer 通過?[PSR-4](http://www.php-fig.org/psr/psr-4/)?自動載入標準 自動加載。 `app`?目錄下包含多個子目錄,如?`Console`?、`Http`?、`Providers`?等。 其中?`Console`?和?`Http`?目錄為進入應用程序核心提供了一個 API 。HTTP 協議和 CLI 是和應用進行交互的兩種機制,但實際上并不包含應用邏輯。換句話說,它們是兩種簡單地發布命令給應用程序的方法。`Console`?目錄包含你全部的 Artisan 命令,而?`Http`?目錄包含你的控制器、中間件和請求。 其他目錄將會在你通過 Artisan 命令 make 生成相應類的時候生成到?`app`?目錄下。例如,`app/Jobs`?目錄在你執行?`make:job`?命令生成任務類時,才會出現在?`app`?目錄下。 > {tip}?`app`?目錄中的很多類都可以通過 Artisan 命令生成,要查看所有有效的命令,可以在終端中運行?`php artisan list make`?命令。 #### `Console`?目錄 `Console`?目錄包含應用所有自定義的 Artisan 命令,這些命令類可以使用?`make:command`?命令生成。該目錄下還有 Console Kernel 類,在這里可以注冊自定義的 Artisan 命令以及定義[調度任務](任務調度.md)。 #### `Events`?目錄 `Events`?目錄默認不存在,它會在你使用?`event:generate`?或者?`event:make`?命令以后才會生成。如你所料,此目錄是用來放置?[事件類](事件系統.md)?的。事件類用于當指定事件發生時,通知應用程序的其它部分,并提供了很棒的靈活性及解耦。 #### `Exceptions`?目錄 `Exceptions`?目錄包含應用的異常處理,同時還是處理應用拋出的任何異常的好位置。如果你想自定義異常的記錄和渲染,你應該修改此目錄下的 Handler 類。 #### `Http`?目錄 `Http`?目錄包含了控制器、中間件以及表單請求等,幾乎所有進入應用的請求處理都在這里進行。 #### `Jobs`?目錄 `Jobs`?目錄默認不存在,可以通過執行?`make:job`?命令生成,`Jobs`?目錄用于存放?[隊列任務](隊列.md),應用中的任務可以推送到隊列,也可以在當前請求生命周期內同步執行。同步執行的任務有時也被看作命令,因為它們實現了?[命令總線設計模式](https://en.wikipedia.org/wiki/Command_pattern)。 #### `Listeners`?目錄 `Listeners`?目錄默認不存在,可以通過執行?`event:generate`?和?`make:listener`?命令創建。`Listeners`?目錄包含處理?[事件](事件系統.md)?的類(事件監聽器),事件監聽器接收一個事件并提供對該 事件發生后的響應邏輯,例如,`UserRegistered`?事件可以被?`SendWelcomeEmail`?監聽器處理。 #### `Mail`?目錄 `Mail`?目錄默認不存在,但是可以通過執行?`make:mail`?命令生成,`Mail`?目錄包含郵件發送類,郵件對象允許你在一個地方封裝構建郵件所需的所有業務邏輯,然后使用?`Mail::send`?方法發送郵件。 #### `Notifications`?目錄 `Notifications`?目錄默認不存在,你可以通過執行?`make:notification`?命令創建,?`Notifications`?目錄包含應用發送的所有通知,比如事件發生通知。Laravel 的通知功能將通知發送和通知驅動解耦,你可以通過郵件,也可以通過 Slack、短信或者數據庫發送通知。 #### `Policies`?目錄 `Policies`?你可以通過執行 ·make:policy· 命令來創建, ·Policies· 目錄包含了所有的授權策略類,策略用于判斷某個用戶是否有權限去訪問指定資源。更多詳情,請查看?[授權文檔](用戶授權.md)。 #### `Providers`?目錄 `Providers`?目錄包含應用的?[服務提供者](服務提供者.md)?。服務提供者在啟動應用過程中綁定服務到容器、注冊事件,以及執行其他任務,為即將到來的請求處理做準備。 在新安裝的 Laravel 應用中,該目錄已經包含了一些服務提供者,你可以按需添加自己的服務提供者到該目錄。 * * *
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看