標籤:image view type 變數 vendor 控制 set 模板 self
thinkPHP簡單結構介紹:application : 應用extend:擴充 擴充內庫public:入口檔案 index.php 在裡面runtime:快取檔案(裡面的檔案可以隨便刪除)thinkphp:tinkphp的核心架構vendor:第三方的內庫
thinkPHP幾個重要的核心檔案:1、App.class.php 架構核心類檔案2、Think.class.php 每次請求都要執行的類3、Controller.class.php 控制器的父類4、Model.class.php 模型的父類5、View.class.php 視圖的父類
構建一個THink應用:
// 檢測PHP環境if(version_compare(PHP_VERSION,‘5.3.0‘,‘<‘)) die(‘require PHP > 5.3.0 !‘);// 開啟偵錯模式 建議開發階段開啟 部署階段注釋或者設為falsedefine(‘APP_DEBUG‘,True);// 定義應用目錄define(‘APP_PATH‘,‘./Application/‘);// 引入ThinkPHP入口檔案require ‘./ThinkPHP/ThinkPHP.php‘;
thinkPHP的路由:
thinkphp下的 conf 下可以進行配置:(154行)
/* 系統變數名稱設定 */‘VAR_MODULE‘ => ‘m‘, // 預設模組擷取變數‘VAR_ADDON‘ => ‘addon‘, // 預設的外掛程式控制器命名空間變數‘VAR_CONTROLLER‘ => ‘c‘, // 預設控制器擷取變數‘VAR_ACTION‘ => ‘a‘, // 預設操作擷取變數
第一種方式:( 預設 )pathinfo模式:網址 / 入口檔案(index.php) / 平台(home) / 控制器(index) / 方法(index)
http://think.fyz.com/index.php/home/index/index
第二種方式:普通模式:網址 / 入口檔案(index.php) ? m=模型(home) & c=控制器(index) & a=方法(index)
http://think.fyz.com/index.php?m=home&c=index&a=index
第三種方式:rewrite();重寫入模式
第四種方式:相容模式 參數 s=/分組/控制器/方法
http://think.fyz.com/index.php?s=/home/index/index
定義和調用TP模板:
所有的模板都要放到 view 檔案夾下:規則:
一個控制器對應一個檔案夾,一個方法對應一個檔案;
TP常用的系統變數:
header(‘content-type:text/html; charset=utf-8‘);echo "當前請求地址:".__SELF__."<br>";echo "當前分組:".__MODULE__."<br>";echo "當前控制器:".__CONTROLLER__."<br>";echo "當前方法:".__ACTION__."<br>";
具體查看地址:ThinkPHP / Behavior / ContentReplaceBehavior.class.php (30行)
$replace = array( ‘__ROOT__‘ => __ROOT__, // 當前網站地址 ‘__APP__‘ => __APP__, // 當前應用地址 ‘__MODULE__‘ => __MODULE__, ‘__ACTION__‘ => __ACTION__, // 當前操作地址 ‘__SELF__‘ => __SELF__, // 當前頁面地址 ‘__CONTROLLER__‘=> __CONTROLLER__, ‘__URL__‘ => __CONTROLLER__, ‘__PUBLIC__‘ => __ROOT__.‘/Public‘,// 網站公用目錄);
一些常用的方法:
1、列印出系統常量;(這些是 ThinkPHP的,不是PHP的)
var_dump(get_defined_constants());
thinkPHP簡單結構介紹!