據說thinkphp5要正式發佈了,對於這個蠻不錯的實用開發工具,我覺着仍是有必要繼續跟進學習使用使用的,翻了翻資料找到了這個還未完善的文檔,不過,夠了,先來個簡單開始吧,本文用的是dev-master分支。php
更多關注github:https://github.com/liu21st/thinkhtml
文檔地址:http://www.kancloud.cn/thinkphp/thinkphp5-guide/30549laravel
demo源碼地址:https://github.com/dingyiming/learn-PHP-tp5git
先前在用laravel的時候就是用composer下載框架源碼,真是很不錯的,記得之前我用thinkphp3.2.3的時候是去官網下載的,體驗果真仍是命令行操做來的舒服github
若是沒安裝過composer,快去補個基礎吧(mac上推薦個良梯叫 「魚擺擺」),提供一些composer的資料:web
新建一個示例項目tp5demo1apache
cd demos composer create-project topthink/think tp5 dev-master --prefer-dist
mac終端中使用以下代碼json
alias subl=\''/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl'\'
接着,就能夠直接從終端使用sublime text2打開thinkphp5項目目錄了
subl tp5demo1
OK!打開了。
thinkphp最親近國人的地方就是文檔註釋都中文,目錄又清晰,也便很實用。
www WEB部署目錄(或者子目錄) ├─composer.json composer定義文件 ├─README.md README文件 ├─LICENSE.txt 受權說明文件 ├─application 應用目錄 │ ├─common 公共模塊目錄(能夠更改) │ ├─runtime 應用的運行時目錄(可寫,可定製) │ ├─module 模塊目錄 │ │ ├─config.php 模塊配置文件 │ │ ├─common.php 模塊函數文件 │ │ ├─controller 控制器目錄 │ │ ├─model 模型目錄 │ │ ├─view 視圖目錄 │ │ ├─ ... 更多類庫目錄 │ ├─common.php 公共函數文件 │ ├─route.php 路由配置文件 │ ├─database.php 數據庫配置文件 │ └─config.php 公共配置文件 ├─public WEB目錄(對外訪問目錄) │ ├─index.php 入口文件 │ ├─.htaccess 用於apache的重寫 │ └─router.php 快速測試文件 ├─thinkphp 框架系統目錄 │ ├─library 框架類庫目錄 │ │ ├─behavior 行爲類庫目錄 │ │ ├─com Com類庫包目錄 │ │ ├─think Think類庫包目錄 │ │ ├─org Org類庫包目錄 │ │ ├─ ... 更多類庫目錄 │ ├─traits 系統Traits目錄 │ ├─vendor 第三方類庫目錄 │ ├─mode 應用模式目錄 │ ├─tpl 系統模板目錄 │ ├─base.php 基礎文件 │ ├─convention.php 框架慣例配置文件 │ └─start.php 框架入口文件
router.php用於php自帶webserver支持,可用於快速測試
啓動命令:
php -S localhost:8888 -t . router.php
能夠看到應用服務跑起來了,去瀏覽器用localhost:8888/tp5demo1/public
測試
但。。。我沒能訪問成功,本覺得是本身的php7有問題,而後使用php-version
切換了php版本仍是無用,具體也不知道爲啥,晚點再求教吧
添加個Mac中homebrew安裝和管理php版本的方法,查看文章
brew list brew unlink php56 brew link php55 brew install php-version //安裝php-version source $(brew --prefix php-version)/php-version.sh && php-version 5 php-version php-version 5.6.16 //php-version切換php版本 php -v //查看php版本
So,轉用Mamp,將thinkphp5訪問localhost/tp5demo1/public
開始成功了,晚點仍是繼續使用vagrant
做爲開發環境了。
http://serverName/應用(或應用入口文件)/模塊/控制器/操做/[參數名/參數值...]
這對於用工具來講仍是蠻重要的,一來能屢清本身的思路,二來使代碼更具可讀性
目錄和文件名
採用 小寫+下劃線
,而且以小寫字母開頭;
類庫、函數文件統一以.php爲後綴
(再也不是xx.class.php);
類的文件名均以命名空間定義
,而且命名空間的路徑和類庫文件所在路徑一致;
類的命名採用駝峯法,而且首字母大寫
,例如 User、UserType,不須要添加controller、model等後綴,UserController直接更改成User
;
函數的命名使用小寫字母和下劃線(小寫字母開頭)
的方式,例如 get_client_ip;
方法的命名使用駝峯法
,而且首字母小寫或者使用下劃線「_」,例如 getUserName,_parseType,一般下劃線開頭的方法屬於私有方法
;
屬性的命名使用駝峯法
,而且首字母小寫或者使用下劃線「_」,例如 tableName、_instance,一般下劃線開頭的屬性屬於私有屬性
;
以雙下劃線「__」打頭的函數或方法做爲魔法方法
,例如 __call 和 __autoload;
常量以大寫字母和下劃線命名
,例如 APP_DEBUG和 APP_MODE;
配置參數以小寫字母和下劃線命名
,例如 url_route_on;
數據表和字段採用小寫加下劃線方式命名
,並注意字段名不要如下劃線開頭,例如 think_user 表和 user_name字段,相似 _username 這樣的數據表字段可能會被過濾
。
在ThinkPHP5.0中實例化一個類,能夠採用:\Think\Route 或者\think\Route都是有效的
,而且都是加載think\route.php文件,若是實例化一個\Org\UploadFile類的話會自動加載org\upload_file.php文件。
更多內容再繼續學習和使用來體驗吧!