TP5與TP3.2的可以通用的方法

模型實例化

TP5取消了自動實例化模型的M方法,轉而使用了新的實例化模型方法。沒有自動實例化則必須自己新建模型類,然後自己實例化,這就有點類似D方法。這裏與D方法的功能類似的有一個model的方法,功能上完全可以替換使用

U方法

U方法是TP中的生成路由的內置方法,現在這個方法可以完全使用url方法替換

TP5中取消了IS_GET和IS_POST方法

如果想繼續使用可以在項目中自定義一下,如下:

 define('IS_GET',Request::instance()->isGet());
 define('IS_POST',       Request::instance()->isPost());

原來的TP的I方法

之前的TP有個I方法用來接收請求參數,目前可以使用input方法替代

需要注意的是新增方法

現在的單條新增方法改爲了save方法,這個是以前的更新方法,而且需要注意的是更新的方式也有區別。新增可以直接用save,而更新則需要加isUpdate(true)

model("")->isUpdate(true)->save($data);

TP5和原來版本TP差距最大的功能性的地方在返回,現在幾乎所有的數據庫查詢都會返回對象

$menuurl->find($menu_id);//此方法返回一個對象,可以使用->toArray()方法轉換爲數組
$this->where($condition)->order($order)->select();//此方法返回一個對象數組,所以要使用數據也必須轉換,當然可以直接用對象

C方法被config方法替換

數據庫配置單獨在database.php中,想獲取參數使用

config('database.prefix')

頁面中目前有自定義常量的方法,使用配置的方法類似之前版本

如果需要全局替換的話,可以直接在配置文件中添加:
'view_replace_str'  =>  [
    '__PUBLIC__'=>'/public/',
    '__ROOT__' => '/',
]
或者直接使用常量配置
{$Think.config.PUBLIC}

默認的引擎標籤可修改,也就是之前的<>這種可以繼續用

        // 模板引擎普通標籤開始標記
        'tpl_begin'    => '{',
        // 模板引擎普通標籤結束標記
        'tpl_end'      => '}',
        // 標籤庫標籤開始標記
        'taglib_begin' => '{',
        // 標籤庫標籤結束標記
        'taglib_end'   => '}',

目前基本的就是以上

發佈了64 篇原創文章 · 獲贊 32 · 訪問量 20萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章