這篇文章主要介紹PHP——thinkphp5的使用方法,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
為芒市等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及芒市網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、芒市網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!前言:
不知大家是否有這樣的感覺,經(jīng)過一段時(shí)間的php學(xué)習(xí)發(fā)現(xiàn)這門語言并不是很難,而且很容易上手。隨隨便便寫個(gè)網(wǎng)頁界面,再把數(shù)據(jù)庫內(nèi)容弄一弄,貌似就沒什么難度了。當(dāng)初的小編也是這樣傻fufu的認(rèn)為做個(gè)網(wǎng)站也就僅此而已——-just so so( ̄_, ̄ )。然而隨著學(xué)習(xí)的不斷深入,猛然發(fā)現(xiàn)事實(shí)并非如此,再回想當(dāng)初的念頭,只能默默地感嘆自己too young too simple。就小編而言,一開始學(xué)的內(nèi)容是PHP的入門階段知識(shí),簡而言之就是把代碼往那一堆,然后調(diào)數(shù)據(jù)庫顯示實(shí)現(xiàn)功能就完事了。隨著想寫的的功能的增加,小編漸漸發(fā)現(xiàn)寫個(gè)設(shè)計(jì)要寫20多個(gè)頁面,改個(gè)代碼就要半天,but小編當(dāng)時(shí)還并沒有框架這一概念。直到學(xué)習(xí)了java EE的Struts2框架,小編才意識(shí)到自己是如此的菜—-瞬間原地爆炸。為了強(qiáng)化php的學(xué)習(xí),小編就花了些時(shí)間來研究php眾多框架中的一個(gè)—>thinkPHP5。
后序 :
小編寫這篇文章旨在做一個(gè)學(xué)習(xí)筆記,順便給想要學(xué)習(xí)thinkphp5的小伙伴一個(gè)簡單地淺顯地介紹,置于數(shù)據(jù)庫的操作小編就不介紹了,因?yàn)檎娴暮芏?,不過開發(fā)手冊(cè)上有較為詳細(xì)的解釋,寫的不好的地方請(qǐng)大神糾正。此外小編個(gè)人覺得tp5的快速入門手冊(cè)也是值得一看的(付費(fèi))。
1.什么是thinkphp5框架?
在介紹thinkphp5之前,我們先來談一談什么是框架。簡言之,別人幫你建好了房子但尚未裝修,你需要在別人設(shè)計(jì)好的戶型里去裝修,省去你搬磚的重復(fù)性操作。(對(duì)于框架的深入理解大家可以自行百度)。
ThinkPHP是一個(gè)快速、簡單的基于MVC和面向?qū)ο蟮妮p量級(jí)PHP開發(fā)框架,遵循Apache2開源協(xié)議發(fā)布,自2006年誕生以來一直秉承簡潔實(shí)用的設(shè)計(jì)原則,在保持出色的性能和至簡代碼的同時(shí),尤其注重開發(fā)體驗(yàn)和易用性,并且擁有眾多的原創(chuàng)功能和特性,為WEB應(yīng)用和API開發(fā)提供了強(qiáng)有力的支持。(對(duì)于初學(xué)者而言了解概念小編認(rèn)為并沒什么用,還不如直接在做項(xiàng)目中感受一下)
2.前期準(zhǔn)備工作
(1)編程工具的選擇:開放工具:phpStorm + 服務(wù)器工具:phpStudy
對(duì)于工具的選擇主要看個(gè)人的喜好,但最好選擇主流的編輯工具。
phpstrom 下載及安裝教程地址:http://www.php.cn/xiazai/gongju/122
phpStudy下載及安裝教程地址:http://www.php.cn/xiazai/gongju/845
如果沒有用過phpstudy可以鏈接上面的地址去學(xué)習(xí)一下phpsyudy的基本操作方法
*下面這一步暫時(shí)用不到
搭建PhpStorm+PhpStudy開發(fā)環(huán)境:https://blog.csdn.net/u012861467/article/details/54692236
(2)下載安裝thinkphp5
下載地址:http://www.thinkphp.cn/donate/download/id/1155.html
安裝方法:將壓縮包解壓放phpStudy/ww的在項(xiàng)目下就可以
輸入網(wǎng)址:localhost/thinkphp_5/public/ 出現(xiàn)下面界面則安裝成功
(3)學(xué)習(xí)thinkphp5所要具備的知識(shí)
php入門階段的知識(shí)+php面向?qū)ο蟮某绦蛟O(shè)計(jì)(==》命名空間那部分可以先看看)+mvc設(shè)計(jì)模式
3.thinkphp5的基本使用方法
(1)參考資料: thinkphp5完全開發(fā)手冊(cè): https://www.kancloud.cn/manual/thinkphp5/118003 開發(fā)手冊(cè)內(nèi)容有很多沒有必要直接看下來,對(duì)于初次接觸tp5的小伙伴而言,你需要用到哪部分知識(shí)就去查找哪部分。
(2)目錄結(jié)構(gòu):(大致了解即可)
tp5的目錄文件有很多,這里我們著重講一下劃線的部分,其他部分大家可以參考開發(fā)手冊(cè)。首先說一下application,簡單地說這個(gè)部分就是我們編寫代碼的地方。如上圖所示,index模塊為前端,而我們一般會(huì)自己創(chuàng)建admin模塊及后端管理員。
index模塊和admin模塊下是我們熟悉的MVC,datebase.php為配置數(shù)據(jù)庫的文件,application下的config.php是影響全部模塊的配置文件,而index和admin的config.php只影響自己模塊下的文件。public下的static是放靜態(tài)資源的文件,index.php為入口文件,即只能通過這一文件訪問。
(3)MVC
Model(模型)是應(yīng)用程序中用于處理應(yīng)用程序數(shù)據(jù)邏輯的部分。
通常模型對(duì)象負(fù)責(zé)在數(shù)據(jù)庫中存取數(shù)據(jù)。
View(視圖)是應(yīng)用程序中處理數(shù)據(jù)顯示的部分。
通常視圖是依據(jù)模型數(shù)據(jù)創(chuàng)建的。
Controller(控制器)是應(yīng)用程序中處理用戶交互的部分。
通??刂破髫?fù)責(zé)從視圖讀取數(shù)據(jù),控制用戶輸入,并向模型發(fā)送數(shù)據(jù)。
Model(模型)
a: 數(shù)據(jù)庫的配置:
打開database.php,一般要改動(dòng)的就是劃線部分。另外在thinkphp5.0完全開發(fā)手冊(cè)中,我們?cè)诨A(chǔ)目錄下可以看到開發(fā)規(guī)范,這是我們需要了解的。
b: 建立模型:(這部分在開發(fā)手冊(cè)中也有更詳細(xì)的解讀)
<?php namespace app\admin\model; use think\Model; class User extends Model { } ?>
大多情況下,我們無需為模型定義任何的屬性和方法即可完成基礎(chǔ)的操作。模型會(huì)自動(dòng)對(duì)應(yīng)一個(gè)數(shù)據(jù)表。規(guī)范是:數(shù)據(jù)庫前綴+當(dāng)前的模型類名(不含命名空間)因?yàn)槟P皖惷邱劮宸?,所以獲取實(shí)際的數(shù)據(jù)表的時(shí)候會(huì)自動(dòng)轉(zhuǎn)換為小寫+下劃線命名的數(shù)據(jù)表名稱,所以只要建立一個(gè)與數(shù)據(jù)表同名的model就可以。如果你的數(shù)據(jù)表不是像tp_user這樣以前綴加下劃線命名可以在model中指定數(shù)據(jù)表。
<?php namespace app\admin\model; use think\Model; use think\Db; class Swe extends Model { // 設(shè)置完整的數(shù)據(jù)表(包含前綴) protected $table = 'swe'; }
下面用一個(gè)例子來解釋:
首先在admin模塊下建立以下幾個(gè)文件,在controller下建立User.php ,Model下建立User.php ,在view下建立user文件夾,在user文件夾下建立user.html
并建立user表 字段有id,clickname,email,birthday
代碼如下:
controller下的User.php
<?php namespace app\admin\controller; use think\Controller; use app\admin\model\User as UserModel; class User extends Controller { // // 創(chuàng)建用戶數(shù)據(jù)頁面 // public function create() // { // return $this->fetch('user');//加載模板,會(huì)自動(dòng)找到view下的user的user.html并顯示 // } // 創(chuàng)建用戶數(shù)據(jù)頁面 public function create() { return view('user');//加載模板,會(huì)自動(dòng)找到view下的user的user.html } // 新增用戶數(shù)據(jù) public function add() { $user = new UserModel; if ($user->allowField(true)->save(input('post.'))) {//input('post.'))為表單提交的數(shù)據(jù) return '用戶[ ' . $user->nickname . ':' . $user->id . ' ]新增成功'; } else { return $user->getError(); } } // model的助手函數(shù)新增用戶數(shù)據(jù) public function add3() { // 使用model助手函數(shù)實(shí)例化User模型 $user = model('User'); // 模型對(duì)象賦值 $user->data([ 'nickname' => 'SWE', 'email' => 'thinkphp@qq.com' ]); if ($user->save()) { return '用戶[ ' . $user->nickname . ':' . $user->id . ' ]新增成功'; } else { return $user->getError(); } }
Model下的User.php
<?php namespace app\admin\model; use think\Model; class User extends Model { }
user.html
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>創(chuàng)建用戶</title> <style> </style> </head> <body> <h3>創(chuàng)建用戶</h3> <FORM method="post" class="form" action="{:url('admin/user/add')}"> 昵 稱:<INPUT type="text" class="text" name="nickname"><br/> 郵 箱:<INPUT type="text" class="text" name="email"><br/> 生 日:<INPUT type="text" class="text" name="birthday"><br/> <input type="hidden" name="__token__" value="{$Request.token}" /> <INPUT type="submit" class="btn" value=" 提交 "> </FORM> </body> </html>
url:localhost/tp5/public/index.php/admin/user/create
執(zhí)行user.php下的create方法
return $this->fetch(‘user’); //加載模板,會(huì)自動(dòng)找到view下的user的user.html并顯示
user.html提交數(shù)據(jù)到add方法
實(shí)例化Model類 ,$user->allowField(true)->save(input(‘post.’))提交數(shù)據(jù)到數(shù)據(jù)庫
以上是PHP——thinkphp5的使用方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
標(biāo)題名稱:PHP——thinkphp5的使用方法-創(chuàng)新互聯(lián)
文章路徑:http://m.rwnh.cn/article46/pihhg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、商城網(wǎng)站、網(wǎng)站設(shè)計(jì)、用戶體驗(yàn)、企業(yè)建站、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容