久久96国产精品久久久-久久发布国产伦子伦精品-久久精品国产精品青草-久久天天躁夜夜躁狠狠85麻豆

技術員聯盟提供win764位系統下載,win10,win7,xp,裝機純凈版,64位旗艦版,綠色軟件,免費軟件下載基地!

當前位置:主頁 > 教程 > 服務器類 >

Thinkphp5.0自動生成模塊及目錄的方法

來源:技術員聯盟┆發布時間:2017-06-01 06:41┆點擊:

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

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

  再次,主要討論Thinkphp5.0生成模塊。

  準備工作

  首先從官方下載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文件即可。

Thinkphp5.0自動生成模塊及目錄的方法