標籤:
大體看了一下,覺得ThinkPHP真是一個不錯的架構。我個人認為使用架構最大的好處是:它給你做了很多事情,而且做得很好!
ThinkPHP目前版本到了3.2,沒敢用最新的,使用3.1作為學習目標,因為資料查閱起來相對多一些 :-)
現在在ThinkPHP基礎上還了OneThink、WeiPHP,都是很不錯的開源架構,謝謝作者的辛苦付出!
-------------------------------------------華麗的開始分割線------------------------------------------------------------------
言歸正傳,開始學習。
首先到官網下載需要的包:
http://www.thinkphp.cn/
解壓到網站目錄下,然後在網站根目錄下建立一個簡單的入口檔案:index.php:
<?php//定義項目名稱和路徑define(‘APP_NAME‘, ‘App‘);define(‘APP_PATH‘, ‘./App/‘);define(‘APP_DEBUG‘,TRUE);// 載入架構入口檔案require( "./ThinkPHP/ThinkPHP.php");
詳細的介紹請參考官方文檔,在此不再抄一遍了。
然後在瀏覽器中訪問:
http://localhost
哇,看到了嗎?竟然運行起來了!
:)歡迎使用 ThinkPHP!
就這麼簡單到沒有朋友!
運行後系統會自動給你產生各種目錄及預設的架構檔案,我喜歡 :-)
好吧,我們要故意做得複雜一點,將項目建立前台和後台:
在App/Conf中的config.php中配置一下:
<?phpreturn array( //‘配置項‘=>‘配置值‘ ‘URL_MODEL‘ =>3, // 如果你的環境不支援PATHINFO 請設定為3 ‘DB_TYPE‘ => ‘mysql‘, ‘DB_HOST‘ => ‘localhost‘, ‘DB_NAME‘ => ‘studyphp‘, ‘DB_USER‘ => ‘root‘, ‘DB_PWD‘ => ‘‘, ‘DB_PORT‘ => ‘3306‘, ‘DB_PREFIX‘ => ‘think_‘, ‘APP_AUTOLOAD_PATH‘ => ‘@.TagLib‘, ‘APP_GROUP_LIST‘ => ‘Home,Admin‘, ‘DEFAULT_GROUP‘ => ‘Home‘, ‘APP_GROUP_MODE‘ => 1, ‘SHOW_PAGE_TRACE‘ => 1//顯示調試資訊);?>
在App下建立Modules目錄,然後在Modules下依次建立Home,在Home中依次建立:Action、Model、Tpl目錄。然後在Action中建立一個索引檔案:
IndexAction.class.php:
<?phpclass IndexAction extends Action{ public function index(){ echo ‘Hello,ThinkPHP !‘; }}
好了,再訪問http://localhost:
Hello,ThinkPHP !
我們的項目已經可以分組管理了!當然,Admin組的建立同Home,這裡不再描述。
什麼?模板輸出的太簡單?好吧,我們搞個漂亮點的顯示,在Tpl中建立Index目錄,在Index目錄下建立一個index.html檔案:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>ThinkPHP</title> </head> <body> <div class="main"> <h2>{$hello}</h2></div> </body></html>
這回滿意了?
恩,我承認,我只是將要輸出的字型簡單處理了一下:
<h2>{$hello}</h2>
來,修改一下後台(有後台,是不是腰板比較硬?說的是腰板噢)
<?phpclass IndexAction extends Action{ public function index(){ $hello=‘Hello,ThinkPHP !‘; $this->assign(‘hello‘,$hello); $this->display(); }}
這回算這個樣本算是比較完整了,我們使用了架構,程式分了組,設定了輸出模板,一個簡單的從後台到前台的系統就建立起來了。
等等,上面配置的資料庫幹嘛?後面會用得上。
-------------------------------------------華麗的結束分割線------------------------------------------------------------------
且聽下回分解!
ThinkPHP學習(一)