ThinkPHP初学心得
来源:互联网 发布:淘宝商城摩托车 编辑:程序博客网 时间:2024/06/06 21:16
最近TP5越来越热,自己也跟风开始学习,下面是自己的一些心得,希望可以帮助大家。
//这里我使用的版本是5.0.10
//TP5.0取缔了以前版本的单字母函数
从官方搬来的目录架构:
├─application 应用目录
├─extend 扩展类库目录(可定义)
├─public 网站对外访问目录
├─runtime 运行时目录(可定义)
├─vendor 第三方类库目录(Composer)
├─thinkphp 框架核心目录
├─build.php 自动生成定义文件(参考)
├─composer.json Composer定义文件
├─LICENSE.txt 授权说明文件
├─README.md README 文件
├─think 命令行工具入口
//上面标红的四个目录是比较重要的
//如果是在linux环境下 需要给 runtime 目录 755 权限
运行要求
PHP >= 5.4.0 (完美支持PHP7) PDO PHP Extension MBstring PHP Extension CURL PHP Extension
默认入口文件:
public/index.php//我们可以在入口文件里面更改应用目录的名称,具体不再赘述
Application (应用目录)结构如下:
├─application 应用目录(可设置)
│ ├─index 模块目录(可更改)
│ │ ├─config.php 模块配置文件
│ │ ├─common.php 模块公共文件
│ │ ├─controller 控制器目录
│ │ ├─model 模型目录
│ │ └─view 视图目录
│ │
│ ├─command.php 命令行工具配置文件
│ ├─common.php 应用公共文件
│ ├─config.php 应用配置文件
│ ├─tags.php 应用行为扩展定义文件
│ ├─database.php 数据库配置文件
│ └─route.php 路由配置文件//网站的资源文件 建议放到根目录下的public/static目录里面
//如果不清楚当前的入口文件位置,可以使用phpinfo()在页面输出中查看DOCUMENT_ROOT的值。
//修改应用配置文件(application/config.php)中的app_debug配置参数可以关闭或开启调试模式
//根据类的命名空间可以快速定位文件位置,在ThinkPHP5.0的规范里面,命名空间其实对应了文件的所在目录,app命名空间通常代表了文件的起始目录为application,而think命名空间则代表了文件的起始目录为thinkphp/library/think,后面的命名空间则表示从起始目录开始的子目录。
我们可以在Index目录下新建一个view文件用来存放视图文件 但应当注意 每个控制器都要有一个相对应的目录文件在view里 , 而控制器中的方法则对应相应目录文件中的文件。如图:
在模版中赋值并渲染输出
//赋值 && 渲染输出 $this->assign('arr', $data); return $this->fetch();
在继承Controller类之后可以使用上面的方法,如果没有,请使用
return view();
记得 return !
记得 return !
记得 return !
阿西吧! 我个人老是把return忘掉, 然后就各种懵逼……
在视图文件中我们可以使用 {$变量名}
来输出。
//变量与左侧花括号之间不能有空白符!
数据库操作
首先我们需要在应用的数据库配置文件application/database.php
中添加数据库的连接信息。此处不z再演示。
//在使用数据库之前记得use命名空间 use think\db
//不要再试图使用 M()
方法,或着去new
一个数据库对象。
//关于数据库的使用有很多种方式,这里不再赘述,有意者请参见官方文档。
public function index() { //获取数据 $data = Db::name('users') -> where('u_id = 1') -> find(); //赋值 && 渲染输出 $this->assign('arr', $data); return $this->fetch(); }
下一章将会谈一下关于路由这方面的,因为自己也是刚开始接触TP5.0, 如果哪里有问题 希望大家多指正。谢谢!
[TP5.0路由及URL]
- ThinkPHP初学心得
- 初学thinkphp
- 初学心得
- 初学心得
- ThinkPHP入门心得
- thinkPHP框架搭建心得
- 初学jsp心得
- com初学心得小记
- 初学网络编程心得
- 初学jsp心得
- 初学jsp心得
- Javascript初学心得
- Javascript初学心得
- Photoshop 初学自习心得
- JS初学心得汇总
- 初学数据结构的心得
- 初学windows的心得
- 菜鸟初学java心得
- Hibernate 判断对象是否包含一个字段
- 主席树(可持久化线段树)讲解 [POJ 2104] K-th Number
- git的分支查看
- 前端如何实现图片懒加载(lazyload) 提高用户体验
- 关于ios中日期相关操作的总结(获取当天日期,n天后日期,当天以后一周以内的日期等)
- ThinkPHP初学心得
- 莱特币挖矿入门图文教程
- socket原理
- 当POST请求是 既包含图片二进制 又包含字符串参数 如何用原生请求(一)
- 可以自动换行的radioGroup
- openfire3.7.1及Darwin安装
- Android弹幕功能实现,模仿斗鱼直播的弹幕效果
- Spring 注解指北
- MySQL按照(windows)及常用命令