到目前為止,我們只是使用了控制器和模型,還沒有接觸視圖,下面來給上面的應用添加視圖模板。
首先我們修改下 Action 的 index 操作方法,添加模板賦值和渲染模板操作。
PHP代碼
classIndexActionextendsAction{
publicfunctionindex(){
$Blog=newBlogModel()?
$list=$Blog->findAll()?
$this->assign('title','ThinkPHP?示例')?
$this->assign('list',$list)?
$this->display()?
}
}
現在我們在瀏覽器里面輸入 http://localhost/myApp/
后出現了下面的頁面
出現上面的錯誤,可是覺得莫名其妙,因為沒有說明任何導致錯誤的原因。
其實,這個提示信息是 ThinkPHP 在部署模式下面的默認提示信息,沒有提示具體的錯誤原因是為了
避免把一些不必要的信息暴露給用戶,從而導致一些安全隱患,在開發過程中,我們只需要開啟調試
模式就可以看到具體的錯誤信息了。
下面,我們修改下項目配置文件,加上調試模式的配置:
PHP代碼
returnarray(
//?定義數據庫連接信息
'DB_TYPE'=>'mysql',
'DB_HOST'=>'localhost',
'DB_NAME'=>'thinkphp',
'DB_USER'=>'root',
'DB_PWD'=>'',
'DB_PORT'=>'3306',
'DB_PREFIX'=>'think_',
//?開啟調試模式
'DEBUG_MODE'=>true,
)?
刪除 Temp 目錄下面的~app.php 文件后,我們再次刷新下瀏覽器,看到了錯誤信息
看了提示的錯誤信息,原來我們還沒有給操作定義模板文件,我們在項目的 Tpl\default\Index\下面創建一個
index.html 模板文件,內容如下:
XML/HTML代碼
{$title}title>head>
[?{$vo.title}?]?{$vo.content}
volist>
body>
html>
IndexAction 類的index 方法里面使用
PHP代碼
$this->display();
輸出頁面的時候,會自動讀取 Tpl\default\Index\index.html 模板文件來輸出。
現在我們再次在瀏覽器里面輸入 http://localhost/myApp/
就可以看到動態數據的輸出了,注意看頁面的 Title 文字的變化。
我們看到了頁面輸出了數據庫的兩條記錄,并且下面還顯示了很多的運行時間信息,這個是開啟調試
模式之后系統默認的顯示信息,包括了頁面執行時間、數據庫操作次數、內存使用情況 當前加載的類
庫數量,以及頁面執行的 SQL 語句和錯誤記錄等等。這些信息是能夠給開發調試帶來很大的幫助,而
且頁面 Trace 信息是可以定制顯示的,你現在看到的是系統默認的顯示項目。
OK,假設我們項目開發完成了,需要正式部署到服務器了,建議關閉調試模式,配置文件中原來的
// 開啟調試模式
'DEBUG_MODE'=>true,
修改為
// 關閉調試模式
'DEBUG_MODE'=>false,
現在,我們重新刷新下瀏覽器,就會看到下面的頁面了,顯然干凈了很多。
到此為止,我們已經完成了一個簡單的數據庫讀取的例子,也帶您領略了使用 ThinkPHP 開發的大致過程。當然,ThinkPHP
的殿堂還有更多更好的功能在等著你!