thinkphp:模板

变量输出

自定义变量输出:{$value}

默认值输出:{$value|default='默认值'}

系统变量:($Think.server/env/post/get/cookie/session/request)

使用运算符需要注意:数学运算,.语法失效

模板解析定界符(TMPL_L_DELIM、TMPL_R_DELIM)

 

 

使用函数

  • 变量是第一个参数:{$vaule|function[=?,?,?]},例如{$value|trim}
  • 变量不是第一个参数{$value|str_replace=?,?,###}
  • 嵌套使用多个函数:{$value|func1|func2|func3},优先级从左到右
  • 回归原生PHP:{:expression}

 

 

包含文件和模板替换

 

 

  • 包含文件:
  • 导入资源文件:import,load,js,css
  • 模板替换:TMPL_PARSE_STRING
  • 默认替换规则:__ROOT__,__APP__,__MODULE__,__CONTROLLER__,__ACTION__,__SELF__,__PUBLIC__

 

ThinkPHP模型:定义域实例化:

  • think PHP模型的定义
    • 模型是以PHP类的方式定义,继承自相应的模型类
    • 约定模型名称是不包含表前缀的数据表名称,UserModel对应jike_user数据表
    • 模型类的属性:tablePrefix,tableName,trueTableName,dbName,connection
    • 实例化:new UserModel(),M('User'),D('User')和空模型

 

 

 

  • think PHP模型数据库相关配置和实现
    • 数据库信息配置
    • 切换数据库:db方法
    • 分布式数据库:DB_DEPLOY_TYPE
    • 读写分离:DB_RW_SEPARATE,DB_MASTER_NUM,DB_SLAVE_NO

 

  • 模型的字段定义
    • 字段缓存机制:
    • 避免每次访问web应用都要访问数据库
    • 保存在哪里:缓存目录下的Data/_fields/
    • 保存形式:数据库名称[.表前缀]+模型名称(小写).php
    • 如何关闭:DB_FIELDS_CACHE
    • 获取模型的字段信息:getDbFields方法
  • 字段定义:
    • 模型的fields属性
    • 使用_type定义字段数据类型
    • 通过pk属性定义表的主键

think PHP模型:数据库操作

  • think PHP模型的CURD操作
  • think PHP模型的连贯操作
  • think PHP模型中定义命名范围
  • think PHP模型使用查询语言
  • think PHP模型中定义字段映射

think PHP模型的CURD操作

  • create(新增):使用add方法
  • update(更新):使用save方法
  • read(读取):使用find(单条),select(多条)
  • delete(删除):使用delete方法

think PHP的连贯操作:

连贯操作又称为链式操作,类似querybuilder,实例化的模型类每调用一次连贯操作方法,便会修改本身的属性值,最后以一个终结方法来结束连贯操作,对于模型来说就是进行数据库操作然后返回结果

think PHP定义命名范围:

  • 命名范围有什么作用
    • 解决开发过程中对数据库操作的冗余
  • 如何定义:模型的_scope属性
  • 通过模型的scope方法调用
  •  

 

 

 

你可能感兴趣的:(php)