1. 程式人生 > >Thinkphp5.0和laravel之間的區別

Thinkphp5.0和laravel之間的區別

渲染模板:

Thinkphp:$this->display()

Laravel:return view()

跨站方式:

Thinkphp:需要手動完成防止跨站攻擊的程式碼

Laravel:考慮到跨轉請求偽造,使用form表單以post方式傳值,且要在form表單中加入{{ csrf_field() }}來完成,不加會顯示token令牌錯誤

路由性:

Thinkphp(3.2):必要要填寫控制器,否則無法訪問

Lavarel:是一個重路由的框架,所有的功能都是由路由發起的。他可以沒有控制器方法,沒有模型,沒有檢視,但是一定要有路由。

中介軟體:

Thinkphp:沒有中介軟體

Laravel:具有中介軟體,可以實現訪問前後的處理(請求和返回,許可權認證等)

If和foreach語句區別:

Thinkphp:和原生php中的寫法一致

Laravel:在編寫是一定要新增@符號(@[email protected] @[email protected]

加密方式:

Thinkphp:是採用thinkphp內建演算法中的md5()加密演算法,易被外界逆向破解,強行破除。

Laravel:採用內建的hash加密(單向加密方法),沒有逆向破解的說法

aravel裡內建了大量的方法供開發者使用,在實際應用中更接近於"讓物件完成一切"的開發思想,比如在後臺表單驗證的時候,Laravel內建了大

量的驗證方法,例如對使用者名稱的驗證:我們使用可以validate方法裡'username'=>'required'(不能為空)|alpha_dash(必須數字字母下劃線)

|between:6,18(在多少位數之間);還內建了例如email;same:欄位名;diff:欄位名等大量的方法極大的提高了開發速度;加密方式 在TP框架中

我們對使用者名稱密碼進行加密時使用md5();的方式進行加密,但md5的缺點在於其可以逆向破解,而且在同等規則下同樣的密碼md5加密出的字串是

有可能出現相同的,這就降低其安全性;