thinkphp6 0學習筆記之啟程2

2021-10-03 22:27:34 字數 2272 閱讀 6176

控制器,即 controller,控制器檔案存放在 controller 目錄下

如果想改變系統預設的控制器檔案目錄,可以在 config 下 route.php 配置:

'controller_layer'

=>

'controllerxyz'

//er後面自由新增

類名和檔名大小寫保持一致,並採用駝峰式(首字母大寫);

namespace

;class

test

在 test 類建立兩個方法 index(預設)和 hello,訪問 url 如下:

//localhost/tp6/public/test/hello那麼如果建立的是雙字母組合,比如 class helloworld,訪問 url 如下:

//localhost/tp6test3/public/hello_worldthinkphp 直接採用方法內 return 返回的方式直接就輸出了;

使用 json 輸出,直接採用 json 函式;

$data

=array

('a'

=>1,

'b'=

>2,

'c'=

>3)

;return

json

($data

);

不推薦使用 die、exit 等 php 方法中斷**執行,推薦助手函式 halt();

halt

('中斷測試'

);

(疑問1、暫時看不懂basecontroller裡的**是啥意思,暫且當做是建立乙個類繼承basecontroller裡的方法,並且呼叫這些方法,2020.3.15)

在單應用模式下,我們可以給專案定義乙個 error 控制器類,來提醒錯誤;

class

error

}

(疑問2、emm,不明白為啥這麼定義有什麼意義 2020.3.15)

多級控制器,在控制器 controller 目錄下再建立目錄並建立控制器;

在controller目錄下建立group目錄,並建立blog控制器;

thinkphp 採用內建抽象層將不同的資料庫操作進行封裝處理

資料抽象層基於 pdo 模式,無須針對不同的資料庫編寫相應的**;

在根目錄的 config 下的 database.php 可以設定資料庫連線資訊;

本地測試,會優先採用.env 的配置資訊,我們和 database 配置對應上即可;

5.connections 配置資料庫連線資訊,可以是多個資料庫,便於切換;

建立乙個用於測試資料連線的控制器:datatest.php:

namespace

;use

think\facade\db

;//facade不懂 標記一下 2020.3.15⭐

class

datatest

public

function

demo()

}

(疑問3、這個為啥要用db::進行呼叫。::是類呼叫方法的時候用的,找到db了,但是看不懂原始碼 2020.3.16 ⭐)
.env的優先順序大於database的執行優先順序
namespace

;use

think\model

;class

students

extends

model

user 繼承模型基類,即可實現資料呼叫 (emm,標個⭐,我會回來消滅你們的)

而受保護的字段$connection,則是切換到 其它 資料庫;

在控制器端寫如下**:

public

function

getuser()

(疑問4、上面呼叫的**塊,model中建立的php檔案,只能是資料庫中表名才能輸出表中的所有資料,這是為何????⭐)

ThinkPHP6 0 學習 安裝

1 linux環境 curl ss php 將檔案移動到bin下 mv composer.phar usr local bin composer 2 使用國內映象 阿里雲 開啟命令列視窗 windows使用者 或控制台 linux mac 使用者 並執行如下命令 composer config g ...

thinkphp6 0學習筆記之資料庫之鏈式查詢

1.通過指向符號 多次聯絡呼叫方法稱為 鏈式查詢 2.當使用db name 時,返回查詢物件 query 後面可以加資料庫對應的方法 3.每次執行乙個資料庫查詢方法時,還會返回查詢物件 4.只要還是資料庫物件,就可以一直使用指向符合進行鏈式查詢 5.find select 方法是返回陣列或資料集物件...

thinkphp6 0之了解容器和依賴注入

1 在model裡建立乙個類繼承model namespace use think model class oneextends model 2 建立乙個控制器inject,通過依賴注入將模型one物件引入其內 namespace use class inject public function i...