thinkphp3和5有什么區別

thinkphp3和5的區別:1、thinkphp3中url訪問支持普通url模式,而thinkphp5中不支持;2、thinkphp5中增加了路由變量規則、資源路由和路由分組等,而thinkphp3中沒有。

thinkphp3和5有什么區別

本文操作環境:Windows10系統、ThinkPHP5版、Dell G3電腦。

thinkphp3和5有什么區別

入口文件位置

5 public 根目錄下面的index.php 文件

路由控制

立即學習PHP免費學習筆記(深入)”;

5.0 url 訪問不在支持普通url模式(get方法)

改進:

增加路由變量規則;

增加組合變量支持;

增加資源路由;

增加路由分組

增加必報定義支持

支持MISS路由定義

請求和相應:

新增請求對象Request 和 相應對象Response

控制器方面

控制器類名默認不帶Controller后綴

新創建控制器類可以無需集成任何的控制器類

控制輸出

不再是直接輸出,而是return方式 數組 或者json對象

3.2 $this->display()

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()

數據庫底層的一些方法

新加:

支持閉包查詢

支持分塊查詢

支持視圖查詢

增加sql監聽事件

5.0 value() column()

Model 新增如下

模型類的后綴不再帶Model

主要改進包括:

重構關聯模型;

支持聚合模型;

廢除視圖模型(改為數據庫的視圖查詢方法);

模型的擴展采用Trait機制;

增加獲取器和修改器;

增加時間戳自動寫入;

增加類型字段轉換;

數組訪問支持;

JSON序列化支持;

自動驗證和自動完成

底層數據庫驅動支持 mysql sqlite PgSQL, oracle, pdo

常量簡化

5.0 版本廢棄了原來的大部分常量定義,僅僅保留框架的路勁常量定義,其余的常量可以使用APP類獲取Request相關屬性獲取方法來完成

推薦學習:《PHP視頻教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享