サマリー:一. 下載和安裝tp5.1 安裝tp5.1需要php版本大于5.6,且推薦使用composer進(jìn)行安裝,先安裝composer,選擇對(duì)應(yīng)php版本.然后安裝composer中國(guó)全量鏡像,幫助下載tp5.1,在composer中文網(wǎng)中的安裝包列表中搜索thinkphp, 通過(guò)cmd命令行,進(jìn)入項(xiàng)目目錄, 輸入composer create-project
一. 下載和安裝tp5.1
安裝tp5.1需要php版本大于5.6,且推薦使用composer進(jìn)行安裝,先安裝composer,選擇對(duì)應(yīng)php版本.然后安裝composer中國(guó)全量鏡像,幫助下載tp5.1,在composer中文網(wǎng)中的安裝包列表中搜索thinkphp, 通過(guò)cmd命令行,進(jìn)入項(xiàng)目目錄, 輸入composer create-project topthink/think 加上要新建的項(xiàng)目文件夾名,等待下載并進(jìn)行安裝.
composer是一個(gè)管理依賴關(guān)系的工具,相當(dāng)于一個(gè)PHP的應(yīng)用商店.
-----------------------------------------------------------------------------
二. tp5.1開發(fā)規(guī)范
1. 目錄和文件:
* 必須使用小寫字母,多個(gè)單詞之間使用下劃線
* 類文件首字母必須大寫,其他文件名必須小寫
* 類名與文件名必須保持一致,如Index類,文件名必須是Index.php
2. 函數(shù),類與屬性和方法
* 函數(shù)必須使用小寫字母+下劃線方式命名: get_info()
* 類名必須使用大駝峰命名法,首字母大寫:UserInfo()
* 屬性和方法使用小駝峰命名,首字母小寫:$userName getInfo()
3. 常量與配置
* 常量必須全部使用大寫字母+下劃線命名: APP_PATH
* 配置參數(shù)必須使用小寫字母加下劃線: app_name
* 環(huán)境變量和常量聲明一樣,全部使用大寫字母+下劃線
4. 數(shù)據(jù)表與字段名:必須使用小寫字母+下劃線:php_edu user_id
-----------------------------------------------------------------------------
三.目錄結(jié)構(gòu)
剛下載完的thinkphp5.1的目錄有6個(gè)最重要的目錄
1. application: 應(yīng)用目錄,大部分代碼都寫在這個(gè)目錄中
2. config: 框架配置目錄,每個(gè)文件對(duì)應(yīng)一個(gè)一級(jí)配置 如app.php
3.public: 對(duì)外可訪問(wèn)的web目錄,里面有入口文件
4.route: 路由目錄,存放用戶自定義的路由
5.runtime: 運(yùn)行目錄,存放臨時(shí)緩存文件或編譯腳本
6.thinkphp: 框架核心腳本,(盡量不要修改,否則升級(jí)全部就覆蓋了)
-------------------------------------------------------------------
7.extend: 擴(kuò)展類庫(kù)目錄,存放不便歸類的類模型和擴(kuò)展框架功能
8.vendor: 由composer加載并管理的第三方類庫(kù)目錄如:驗(yàn)證碼,圖片處理等等.
----------------------------------------------------------------------------
應(yīng)用目錄(application)介紹
1. common: 公共模塊目錄,存放被其他模塊共享的代碼,外部禁止訪問(wèn).
2.module: 模塊目錄,可以有多個(gè),例如index模塊(前臺(tái)),admin模塊(后臺(tái))
3.MVC模型就是在application中體現(xiàn) model view controller ,model共享一個(gè)數(shù)據(jù)庫(kù)的話就放在和module模塊目錄同級(jí)
4.config就是應(yīng)用配置目錄(可選) common.php 應(yīng)用公共函數(shù)庫(kù)(可選)
-------------------------------------------------------------------------------
四.框架配置
1.慣例配置: think/convertion.php 強(qiáng)烈建議不要修改,就是框架的默認(rèn)配置
2.應(yīng)用配置: application同級(jí)的config文件夾 ,生效范圍為整個(gè)應(yīng)用項(xiàng)目:application
3.模塊配置[可選]:位置在 application/模塊/config/...僅對(duì)當(dāng)前模塊生效,同名模塊配置會(huì)覆蓋應(yīng)用配置項(xiàng),常用app.php, database.php,
4.動(dòng)態(tài)配置[可選]:在請(qǐng)求的控制器中的方法里,僅對(duì)當(dāng)前url請(qǐng)求生效,不會(huì)保存到配置文件中.
5.優(yōu)先級(jí)為 管理配置 < 應(yīng)用配置 < 模塊配置 < 動(dòng)態(tài)配置
6.如何獲取配置項(xiàng)
* 使用Config類: 需要先導(dǎo)入配置類(門面導(dǎo)入)
* 獲取全部配置: Config::get()
use think\Facade\Config; ... dump(Config::get()); //全部靜態(tài)使用方法
* 僅獲取一個(gè)一級(jí)配置: Config::get('一級(jí)文件名.') 注意這個(gè)點(diǎn).或者Config::pull('一級(jí)文件名') 不用點(diǎn)
dump(Config::get('app.')); //參數(shù)后面要添加點(diǎn) dump(Config::pull('app')); //后面不要添加點(diǎn)
* 設(shè)置配置項(xiàng): Config('一級(jí)文件名.配置項(xiàng)','配置項(xiàng)值')
Config::set('app.admin_email','iron_man@php.cn');
* 判斷是否存在指定配置項(xiàng) Config::has('一級(jí)文件名.配置項(xiàng)')
dump(Config::has('app.default_lang')); //默認(rèn)就在app.php配置文本中查找
* 助手函數(shù)(性能會(huì)下降) 不需要導(dǎo)入類
* config() 獲取全部配置項(xiàng) config('一級(jí)配置項(xiàng)文件名.') 獲取一級(jí) config('?一級(jí)配置項(xiàng)文件名.配置名') 查看是否存在
dump(config()); //獲取到了全部的配置項(xiàng) dump(config('database.')); //獲取database.php的一級(jí)配置項(xiàng) dump(config('?default_lang')); //查詢是否存在 dump(config('?app.default_lang')); //查詢是否存在 dump(config('app.default_lang')); //輸出配置項(xiàng)
五.路由與URL
1.支持的URL訪問(wèn)模式
* PATH_INFO 模式: http://localhost/index.php/模塊/控制器/方法/變量/值/.... 或者http://localhost/index.php/模塊/控制器/方法?變量=值&...
* 兼容模式:localhost/index.php?s=模塊/控制器/方法/變量/值...
2.隱藏入口文件,僅適用于但入口文件設(shè)計(jì),為不同模塊綁定不同的入口文件,則不允許隱藏入口文件,如果為admin模塊綁定了入口文件:admin.php 那么admin.php就不能隱藏
3.隱藏方法,就是在入口文件同級(jí)下創(chuàng)建.htaccess
六.命名空間
用命名空間導(dǎo)入類,避免類之間的命名沖突
七.入口文件
1.入口文件默認(rèn)為:index.php, 位于public目錄下,是統(tǒng)一的,但不是唯一的,不同模塊可以綁定不同的入口文件
2.如果要改變應(yīng)用目錄名稱,需要在重新定義入口文件 聲明一個(gè)define('APP_PATH','新應(yīng)用目錄文件夾絕對(duì)路徑') 然后Container::get('app')->path(APP_PATH)->run()->send()才可以
3.多入口文件,在配置文件中 config/app.php中 入口自動(dòng)綁定模塊
'auto_bind_module' => true, 打開即可 如要給admin模塊綁定入口文件 創(chuàng)建入口文件 admin.php
添削の先生:韋小寶添削時(shí)間:2018-12-11 14:05:02
先生のまとめ:總結(jié)的沒(méi)毛??!都可以發(fā)到群里和其他的同學(xué)分享一下了!