据说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文件。
更多内容再继续学习和使用来体验吧!