Thinkphp5.0自動產生模組以及目錄的方法

來源:互聯網
上載者:User
這篇文章主要介紹了Thinkphp5.0自動產生模組及目錄的方法,簡單分析了Thinkphp5.0的結構、目錄、建立與運行方法,需要的朋友可以參考下

本文執行個體講述了Thinkphp5.0自動產生模組及目錄的方法。分享給大家供大家參考,具體如下:

Thinkphp5.0發布已有些時日了,據說效能方面有很大的提升,按照官方的話,ThinkPHP5.0版本是一個顛覆和重構版本,採用全新的架構思想,引入了很多的PHP新特性,最佳化了核心,減少了依賴,實現了真正的惰性載入,並針對API開發做了大量的最佳化。是時候得download一份,研究一下。今天主要講講其自動建立模組及目錄。

Thinkphp5.0自動產生模組較ThinkPHP3.2,確實有很大的變化。

再次,主要討論Thinkphp5.0產生模組。

準備工作

首先從官方下載ThinkPHP5.0,下載後檔案結構如下:

只保留thinkphp目錄其他的所有目錄及檔案一併刪除(可以先轉移到其他地方,以備後續使用)

現在就開始產生項目需要目錄

thinkphp3.2建立目錄貌似簡單,但是thinkphp5.0卻更加靈活。不禁想起了良才是把複雜的事情變簡單;庸才是把簡單的事情變複雜;蠢材是把簡單的事情變得更簡單,複雜的事情變得更複雜。

1.建立入口檔案index.php,雖然官方強調入口檔案位置,可以隨意放置,但是為了便於學習,還是放在根目錄下

// 應用入口檔案define('APP_PATH', 'application/'); // 定義項目路徑,和之前3.2版本沒有區別define('APP_AUTO_BUILD',true); //開啟自動產生define('APP_DEBUG', true);// 開啟偵錯模式define('MODULE','module');// 載入架構引導檔案require 'thinkphp/start.php';// 執行應用\think\App::run();

其實我個人覺得,TP官方為啥不把,程式的執行\think\App::run(); 放置在start.php 目錄呢?最後,發現原來TP5.0引入了一個define('APP_AUTO_RUN', true);常量,當在index.php頁面定義了改常量,項目就會自動執行,不需要添加\think\App::run();

2.建立項目名與build.php檔案

個人感覺thinkphp5.0做的不好的一點就是上面定義的專案檔夾需要自己建立,究其原因,因為裡面要放置項目建立設定檔build.php。但是為啥TP官方不把build.php放置在根目錄下呢?然後自動產生application檔案夾呢?在這一點我覺得TP3.2做的就比5.0好。

現在來討論一下build.php,官方預設的bulid.php內容如下,現在來討論一下

return [  // 產生運行時目錄  '__dir__' => ['runtime/cache', 'runtime/log', 'runtime/temp', 'runtime/template'],  '__file__' => ['common.php'],  // 定義index模組的自動產生  'index'  => [    '__file__'  => ['common.php'],    '__dir__'  => ['behavior', 'controller', 'model', 'view'],    'controller' => ['Index', 'Test', 'UserType'],    'model'   => [],    'view'    => ['index/index'],  ],  // 。。。 其他更多的模組定義];

可以給每個模組定義需要自動產生的檔案和目錄,以及MVC類。

__dir__ 表示組建目錄(支援多級目錄)
__file__ 表示組建檔案(不定義預設會產生 config.php 檔案)
controller 表示產生controller類
model表示產生model類
view表示產生html檔案(支援子目錄)

自動產生以APP_PATH 為起始目錄, __dir__ 和 __file__ 表示需要自動建立目錄和檔案,其他的則表示為模組自動產生。

模組的自動產生則以 APP_PATH.'模組名/' 為起始目錄。

最後直接運行index.php檔案即可。

以上就是本文的全部內容,希望對大家的學習有所協助,更多相關內容請關注topic.alibabacloud.com!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.