thinkphp3和5的區別:1、thinkphp3中url訪問支持普通url模式,而thinkphp5中不支持;2、thinkphp5中增加了路由變量規則、資源路由和路由分組等,而thinkphp3中沒有。
本文操作環境:Windows10系統、ThinkPHP5版、Dell G3電腦。
thinkphp3和5有什么區別
入口文件位置
5 public 根目錄下面的index.php 文件
路由控制
立即學習“PHP免費學習筆記(深入)”;
5.0 url 訪問不在支持普通url模式(get方法)
改進:
增加路由變量規則;
增加組合變量支持;
增加資源路由;
增加路由分組
增加必報定義支持
支持MISS路由定義
請求和相應:
新增請求對象Request 和 相應對象Response
控制器方面
控制器類名默認不帶Controller后綴
新創建控制器類可以無需集成任何的控制器類
控制輸出
不再是直接輸出,而是return方式 數組 或者json對象
5.0 return $this->fetch()
模板引擎
模塊定界符由原來的 -> {}
新加:模板繼承功能 命名塊 {block name}
助手函數
3.2 M D
5.0 model db
G() -> debug()
E() -> exception()
C() -> config()
I() -> input()
W() -> widget()
D() -> model()
S() -> cache()
U() -> url()
數據庫底層的一些方法
新加:
支持閉包查詢
支持分塊查詢
支持視圖查詢
5.0 value() column()
Model 新增如下
模型類的后綴不再帶Model
主要改進包括:
重構關聯模型;
支持聚合模型;
廢除視圖模型(改為數據庫的視圖查詢方法);
模型的擴展采用Trait機制;
增加獲取器和修改器;
增加時間戳自動寫入;
增加類型字段轉換;
數組訪問支持;
JSON序列化支持;
自動驗證和自動完成
底層數據庫驅動支持 mysql sqlite PgSQL, oracle, pdo
常量簡化
5.0 版本廢棄了原來的大部分常量定義,僅僅保留框架的路勁常量定義,其余的常量可以使用APP類獲取Request相關屬性獲取方法來完成
推薦學習:《PHP視頻教程》