听说thinkphp5要正式发布了,对于这个蛮不错的实用开发工具,我觉着还是有必要继续跟进学习使用使用的,翻了翻资料找到了这个还未完善的文档,不过,够了,先来个简单开始吧,本文用的是dev-master分支。
更多关注github:https://github.com/liu21st/think
1.使用composer下载thinkphp5
先前在用laravel的时候就是用composer下载框架源码,真是很不错的,记得以前我用thinkphp3.2.3的时候是去官网下载的,体验果然还是命令行操作来的舒服
-
如果没安装过composer,快去补个基础吧(mac上推荐个良梯叫 “鱼摆摆”),提供一些composer的资料:
新建一个示例项目tp5demo1
cd demos
composer create-project topthink/think tp5 dev-master --prefer-dist
2.从命令行打开sublime text2
mac终端中使用如下代码
alias subl=\''/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl'\'
接着,就可以直接从终端使用sublime text2打开thinkphp5项目目录了
subl tp5demo1
OK!打开了。
3.看一下thinkphp5目录结构(copy在项目中README.md)
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 框架入口文件
4.用内置服务器启动thinkphp5
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
作为开发环境了。
5.URL含义参照
http://serverName/应用(或应用入口文件)/模块/控制器/操作/[参数名/参数值...]
6.记录下Thinkphp5命名规范
这对于用工具来说还是蛮重要的,一来能屡清自己的思路,二来使代码更具可读性
目录和文件
目录和文件名
采用小写+下划线
,并且以小写字母开头;类库、函数文件统一
以.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文件。
更多内容再继续学习和使用来体验吧!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。