標籤:實現 keyword use 變數 control order roo 資訊 str
ThinkPHP架構
訪問入口檔案後在application檔案夾中會出現一些檔案夾,其中的home檔案夾是前端模組,也可以在application檔案夾中建立檔案夾。
home檔案夾模組中Conf檔案夾的config設定檔,是對於當前模組的:修改當前模式
convention設定檔是對於全體的設定檔:整體的模式
一、MVC模式(把程式分成3層,也就是三層架構,核心是控制器也就是controller):
M:model資料模型層 資料庫的相關操作是放在model檔案夾中
V:view 視圖層 模板檔案
C:controller 控制器 寫程式邏輯
MVC模式注意事項:
MVC模式訪問的時候是訪問的控制器中的操作方法,而不是訪問的檔案
用到資料庫時:控制器不僅要拿出靜態頁面,還要解析靜態頁面的標籤,然後在調資料庫,最後將這兩個綜合然後發給用戶端
如果程式使用MVC模式:約定勝於配置
約定:
1.類檔案命名要用駝峰法,也就是首字母大寫
2.類檔案的類名要和檔案名稱保持一致
通過修改入口檔案中的/Application/,可以切換訪問檔案
// 定義應用目錄
1 |
define( ‘APP_PATH‘ , ‘./Application/‘ ); |
控制器寫法格式:
namespace命名空間(用的是反斜線):相當於一個虛擬目錄
例如:
1 |
namespace Home\Controller; |
use 父類命名空間
例如:
定義控制器類(繼承父類控制器類)
例如:
1 |
class IndexController extends Controller {<br> } |
操作方法(首字母小寫)
例如:
123 |
public function index(){ } |
二、注入變數:
$this->assign();
顯示模板:display和show方法不用給參數
$this->display();
$this->show();
三、模板存放規則:
不能直接建立模板檔案,應該這樣:
先建立檔案夾:名字是控制器的:方法的名字
系統常量(比較常用的:雙下線打頭的):
__ROOT__
__INFO__
__SELF__(瀏覽器中有什麼它就有什麼,自身訪問路徑)
__APP__
__MODLE__(模組名) __CONTROLLER__(當前控制下的處理控制方法) __ACTION__(當前操作方法)
四、命名空間
命名空間:相當於虛擬目錄實現自動載入類的機制
初始命名空間:ThinkPHP\Library
初始命名空間下有很多根命名空間:
(1)Library裡面的檔案夾
(2)Application中的模組檔案夾
注意:
(1)定義的時候:
在寫命名空間時:需要從根寫起,寫到該檔案所在的檔案夾結束
(2)使用的時候:
在用命名空間時:從根開始寫,寫到類名結束
(3)命名空間裡面用“反斜線”
(4)所有的類檔案都會定義命名空間;但是不是所有的類檔案要使用命名空間;用到了某個類,但是在同一目錄下也可以不用寫
五、tp架構的快捷函數:
1.U() 製作url地址的快捷函數
2.C(名稱) 獲得組態變數(convertion.php config.php)資訊
3.C(名稱,值) 設定組態變數資訊
4.L() 獲得語言變數資訊
5.E() 給頁面輸出錯誤資訊
6.A("項目://模組/控制器") 執行個體化控制器對象
7.A("Home/User") 執行個體化User控制器對象
8.A("book://Home/User") 執行個體化book項目的Home模組的User控制器對象
(轉)
ThinkPHP架構知識的注意點