Day11-從基礎學習 ThinkPHP-Model
前言
這一章節會稍微短一點,主要是介紹基礎的 Model 定義,但是在一般開發下是不太會針對 Model 做太多的設置,所以你會發現這一章節真的比較沒有什麼。
起手式
首先 Model 定義的方式很簡單,但是在那之前我們必須先建立 Model 資料夾,因為預設 ThinkPHP 並沒有提供 Model 資料夾,所以我們在 about
底下建立一個 model
資料夾,並新增一個檔案叫做 about.php ↓
那 Model 定義的方式只需要這樣子即可:
1 |
|
裡面最需要注意的地方只有這一段程式碼 use think\Model;
,這一段是在告知 ThinkPHP 我們要使用 Model 的核心庫,如果你缺少這一行就會無法正常運行唷。
好,恭喜你,你已經完成基礎的 Model 定義了(?!),但是僅僅定義 Model 是不夠的,畢竟 Model 會操控 DB,所以下來我們要來設置資料庫。
連接資料庫
當我們準備好上面動作後,就要來做一下連接資料庫動作,否則 Model 是無法做任何操作 DB 的。
資料庫設置的檔案位於 project/config
底下的 database.php,只需要將相關欄位填入即可 ↓
基本上只需要填入 hostname
、username
、password
就可以了,那麼依照我的 MySQL 設置,就會這樣填入 ↓
只是有一個地方我有另外填入,也就是 prefix
,因為我建立的資料庫是有前綴的,所以才會填入 think_
。
接下來我們要先來新增一張資料表(後面章節會使用到),SQL 指令我就直接給各位囉~
1 | CREATE TABLE think_user ( |
你可以發現我資料表也會加上前綴,而這等一下會幫助我們後面的操作,最主要是因為我在前面設置 database.php 時,有填入 prefix => 'think_'
,那麼資料庫在建立上就都必須加上前綴,否則 ThinkPHP 找不到唷。
模型指定資料表
接下來由於我在 database.php 有設置資料庫 & 表的前綴 think_
,所以我們接下來再指定資料表的時候必須這樣寫 ↓
1 |
|
當然你也可以簡寫,ThinkPHP 會幫你帶上 think_
,只是我個人習慣寫完整一點:
1 | protected $table = 'think_user'; |
另外如果你希望這個 Model 會連接不同的資料庫也是可以,只需要這樣寫入設定覆蓋原本的就可以了:
1 |
|
結尾
這邊這樣講下來,其實非常的模糊的,所以後面章節會慢慢在搭配 Controller+Model 的操作來加深觀念。