ThinkPHP框架

访问入口文件后在application文件夹中会出现一些文件夹,其中的home文件夹是前端模块,也可以在application文件夹中新建文件夹。
home文件夹模块中Conf文件夹的config配置文件,是对于当前模块的:修改当前模式
convention配置文件是对于全体的配置文件:整体的模式

一、MVC模式(把程序分成3层,也就是三层架构,核心是控制器也就是controller):
M:model数据模型层 数据库的相关操作是放在model文件夹中
V:view 视图层 模板文件
C:controller 控制器 写程序逻辑

MVC模式注意事项:

MVC模式访问的时候是访问的控制器中的操作方法,而不是访问的文件
用到数据库时:控制器不仅要拿出静态页面,还要解析静态页面的标签,然后在调数据库,最后将这两个综合然后发给客户端
如果程序使用MVC模式:约定胜于配置

约定:
1.类文件命名要用驼峰法,也就是首字母大写
2.类文件的类名要和文件名保持一致

通过修改入口文件中的/Application/,可以切换访问文件
// 定义应用目录

define('APP_PATH','./Application/');

控制器写法格式:
namespace命名空间(用的是反斜杠):相当于一个虚拟目录
例如:

namespace Home\Controller;

use 父类命名空间
例如:

use Think\Controller;

定义控制器类(继承父类控制器类)
例如:

class IndexController extends Controller {
        }

操作方法(首字母小写)
例如:

public function index(){

    }

  

二、注入变量:
$this->assign();

显示模板:display和show方法不用给参数
$this->display();
$this->show();

三、模板存放规则:
不能直接创建模板文件,应该这样:
先建立文件夹:名字是控制器的:方法的名字

系统常量(比较常用的:双下线打头的):
__ROOT__
__INFO__
__SELF__(浏览器中有什么它就有什么,自身访问路径)
__APP__
__MODLE__(模块名) __CONTROLLER__(当前控制下的处理控制方法) __ACTION__(当前操作方法)

四、命名空间

命名空间:相当于虚拟目录实现自动加载类的机制

初始命名空间:ThinkPHP\Library

初始命名空间下有很多根命名空间:
(1)Library里面的文件夹

(2)Application中的模块文件夹

注意:
(1)定义的时候:
       在写命名空间时:需要从根写起,写到该文件所在的文件夹结束
(2)使用的时候:
       在用命名空间时:从根开始写,写到类名结束
(3)命名空间里面用“反斜杠”
(4)所有的类文件都会定义命名空间;但是不是所有的类文件要使用命名空间;用到了某个类,但是在同一目录下也可以不用写

五、tp框架的快捷函数:

1.U() 制作url地址的快捷函数

2.C(名称) 获得配置变量(convertion.php config.php)信息
3.C(名称,值) 设置配置变量信息

4.L() 获得语言变量信息
5.E() 给页面输出错误信息

6.A("项目://模块/控制器") 实例化控制器对象
7.A("Home/User") 实例化User控制器对象
8.A("book://Home/User") 实例化book项目的Home模块的User控制器对象

后面继续更新中~

ThinkPHP框架知识的注意点的更多相关文章

  1. ThinkPHP框架知识

    php框架 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格 ...

  2. ThinkPHP框架知识(比较全的知识)

    php框架 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格 ...

  3. tp框架知识 之(链接数据库和操作数据)

    框架有时会用到数据库的内容,在"ThinkPhp框架知识"的那篇随笔中提到过,现在这篇随笔详细的描述下. 一.链接数据库 (1)找到模块文件夹中的Conf文件夹,然后进行编写con ...

  4. thinkphp框架 的 链接数据库和操作数据

    框架有时会用到数据库的内容,在"ThinkPhp框架知识"的那篇随笔中提到过,现在这篇随笔详细的描述下. 一.链接数据库 (1)找到模块文件夹中的Conf文件夹,然后进行编写con ...

  5. ThinkPhp框架对“数据库”的基本操作

    框架有时会用到数据库的内容,在"ThinkPhp框架知识"的那篇随笔中提到过,现在这篇随笔详细的描述下. 数据库的操作,无疑就是连接数据库,然后对数据库中的表进行各种查询,然后就是 ...

  6. tp框架知识 之(链接数据库和操作数据内容)

    框架有时会用到数据库的内容,在"ThinkPhp框架知识"的那篇随笔中提到过,现在这篇随笔详细的描述下. 一.链接数据库 (1)找到模块文件夹中的Conf文件夹,然后进行编写con ...

  7. ThinkPHP框架基础知识一

    ThinkPHP是一个快速.兼容而且简单的轻量级国产PHP开发框架,诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,遵循Apache2开源协议发布,从Struts结构移植过来 ...

  8. ThinkPHP框架的一些基础应用

    这是俺滴师傅给俺传授了的知识,特在此分享. TP框架,做PHP开发的都应该有所耳闻.下面,我们就来说说入口文件的生成: 创建新项目时,首先,在目录文件下创建一个新的文件夹.然后将Thinkphp框架文 ...

  9. 【PHP ThinkPHP框架】小bug汇总[更新]

    目录结构 1.函数调用 2.绑定select下拉框数据 3.PHP查询功能 4.格式化时间和价钱 5.IF标签比较两个变量 6.eq标签比较两个变量 7.新增信息或者修改信息的自动验证和自动填充 8. ...

随机推荐

  1. 使AIX下ksh可以翻查上一条命令

    http://blog.csdn.net/wangjialiang/article/details/7106393 http://www.blogjava.net/03081626/archive/2 ...

  2. WPF学习之数据绑定

    WPF中的数据绑定提供了很强大的功能.与普通的WinForm程序相比,其绑定功能为我们提供了很多便利,例如Binding对象的自动通知/刷新,Converter,Validation Rules,Tw ...

  3. PHP 文件上传全攻略

    PHP文件上传功能一般都是大家使用事先封装好的函数,要用的时候直接使用已封装的函数就完了,但有时候不能使用封装函数,还真不大能记住PHP的上传相关的东西,在此做个总结,以备后用.   1.表单部分 允 ...

  4. 用php进行md5解密的源码,亲测可用

    <?php $md5 = "c1c95b382230eb9e27a60c4baceb5f2e"; $uid = "hhp-ImZRY"; $token = ...

  5. ArcGIS API for JavaScript 4.2学习笔记[2] 显示3D地图

    3D地图又叫场景. 由上一篇可知, require入口函数的第一个参数是字符串数组 ["esri/Map", "esri/views/MapView", &qu ...

  6. 第七届蓝桥杯javaB组真题解析-生日蜡烛(第二题)

    题目 /* 生日蜡烛 某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛. 现在算起来,他一共吹熄了236根蜡烛. 请问,他从多少岁开始过生日party的? 请填写他开始 ...

  7. oracle 12c安装详细教程

    数据库下载:www.orcale.com访问官网自行下载. 一,将下载好的两个压缩包在同一目录中进行解压(文件目录尽量用英文) 解压后如下使用管理员身份运行setup安装程序 注意:对于学习阶段,这一 ...

  8. 关于data-xxx属性大小写不敏感,不识别大写的几点总结

    1.所有标签属性,没有大小写区分,都是小写,如:data-userID,在输出后会变成data-userid,前者只能获取到'undefined'. 2.dataset 自动把 - 转换为驼峰.类似的 ...

  9. CentOS 7 网卡命名修改为ethx格式

    Linux 操作系统的网卡设备的传统命名方式是 eth0.eth1.eth2等,而 CentOS7 提供了不同的命名规则,默认是基于固件.拓扑.位置信息来分配.这样做的优点是命名全自动的.可预知的,缺 ...

  10. 简单三层分页aspnetpager控件(欢迎指点)

    首先添加引用AspNetpager.dll(将.dll文件放在bin中进行引用) 接着添加<%@ Register Assembly="AspNetPager" Namesp ...