天天看點

ThinkPHP 初探

<a href="#%E5%87%86%E5%A4%87">準備</a>

<a href="#thinkphp%E4%B8%8B%E8%BD%BD">ThinkPHP下載下傳</a>

<a href="#eclipse-for-php">Eclipse-for-php</a>

<a href="#%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8">如何使用</a>

<a href="#%E6%94%BE%E7%BD%AE%E4%BD%8D%E7%BD%AE">放置位置</a>

<a href="#%E6%A3%80%E9%AA%8C%E5%BC%95%E7%94%A8%E6%95%88%E6%9E%9C">檢驗引用效果</a>

<a href="#%E6%95%88%E6%9E%9C">效果</a>

<a href="#%E8%B7%AF%E7%94%B1">路由</a>

<a href="#%E8%B0%83%E8%AF%95%E4%B9%8B%E6%A8%A1%E6%9D%BF%E7%9A%84%E4%BD%BF%E7%94%A8">調試之模闆的使用</a>

<a href="#%E5%89%8D%E6%8F%90">前提</a>

<a href="#%E7%94%9F%E4%BA%A7%E6%A8%A1%E5%BC%8F">生産模式</a>

<a href="#%E5%BC%80%E5%8F%91%E6%A8%A1%E5%BC%8F">開發模式</a>

<a href="#%E6%B7%BB%E5%8A%A0%E5%AE%8C%E7%9B%B8%E5%BA%94%E7%9A%84%E8%B7%AF%E5%BE%84%E4%BB%A5%E5%8F%8A%E6%A8%A1%E6%9D%BF%E6%96%87%E4%BB%B6%E5%90%8E">添加完相應的路徑以及模闆檔案後</a>

<a href="#%E6%80%BB%E7%BB%93">總結</a>

對國人開發的這款PHP架構早有耳聞,今日就來趟趟水,也為了今後更好的學習。

由于我這裡的PHP的版本較低,為PHP5.2.8版本的,是以對于高版本的Tp是不支援的,為了減少工作量,咱幹脆下載下傳一個tp版本較低點的吧。

<a href="http://www.thinkphp.cn/download/338.html">ThinkPHP3.1.3版本完整版</a>

前段時間,剛剛接觸PHP的時候由于不了解,是以用的是DreamWeaver,不得不說裡面有很多對于前端開發而言比較實用的技巧,但是代碼提示做的真的不給力,是以調試代碼的時候,内心幾乎是崩潰的。

後來覺得SublimeText還不錯,代碼高亮做的很不賴,唯一的缺點就是<code>&lt;?php</code>這樣一個骨灰級的标簽的高亮是白色的,雖然可以進行自定義的拓展,但還是顯得很單薄。對于調試尤其如此。

最後在選擇合适的IDE環境的時候,也是陷入了糾結,到底是用更專業的PhpStorm呢?還是用更順手的Eclipse呢?最後由于PhpStorm的收費問題,果斷選擇了Eclipse。 :(

下面附上該Eclipse的下載下傳位址。

<a href="http://www.eclipse.org/pdt/#download">Eclipse-for-php-neon下載下傳位址</a>

下載下傳完的tp解壓之後我們會發現裡面除了ThinkPHP檔案夾,還有其他的幾個檔案夾,不過我們隻需要拷貝ThinkPHP到我們的項目根目錄即可。

我們隻需要寫一個php檔案,對其進行通路即可。如下:

index.php

通路網址<code>http://localhost/tplearn/index.php</code>

ThinkPHP 初探

出現上圖的話,說明你的環境已經搭建好了,這時我們回到剛才的index.php所在的目錄,就會發現其多了幾個檔案夾,這就是tp為我們自動生成的友善我們接下來開發的檔案夾。

路由,說白了就是根據一個位址通路到我們的資料的一個方式。ThinkPHP中對路由的支援有四種方式。

普通模式 <code>http://localhost/tplearn/index.php?m=User&amp;a=login</code>

一般模式 <code>http://localhost/tplearn/index.php/User/login</code>

僞靜态模式 <code>http://localhost/tplearn/User/login</code>

相容模式 <code>http://localhost/tplearn/index.php?s=/User/login</code>

具體的内容網頁上有很多,基礎的内容這裡不再過多的闡述了。

不過我們用的最多的可能就是一般模式。

形如<code>http://localhost/tplearn/index.php/User/login</code>

其底層就是會通過tp自帶的請求轉發配置設定下到UserAction.class.php檔案中的UserAction的login方法,并實作業務邏輯。

類似于著名的php模闆引擎Smarty,ThinkPHP也有屬于自己的一套模闆,好處神馬的不在闡述,也沒什麼難于了解的地方。

今天要說的就是在不同的模式下使用模闆引擎産生的效果。

這次根據前面講解的路由使用來讓tp給用戶端發送一張網頁,預設咱們沒有建立該模闆檔案。

在tp的配置檔案中我們看到的APP_DEBUG字段就是來控制調試模式的,但是我們最好是在自己的項目的配置檔案中進行指定,否則會導緻架構出錯。

下面看一個預設的狀态的效果。

生産狀态下為了安全和更好的使用者體驗,僅僅給一個友好的錯誤提示即可。

ThinkPHP 初探

代碼中會有錯誤,這很正常,但是如果錯誤資訊能更好的顯示出來,對于我們開發來說,效率真的是再好不過了。

開發模式下錯誤資訊更加詳細的被展示了出來,我們可以有的放矢的來修正代碼中的bug。

ThinkPHP 初探
ThinkPHP 初探

回顧一下,這次的實驗中最為重要的地方就在于:

開發模式和生産模式的各自特點: APP_DEBUG的define方式和配置檔案URL_MODEL的0,1,2,3值的兩方式。

模闆檔案的簡單使用