ThinkPHP3.1.2项目技巧三部曲 一

来源:互联网 发布:中等收入陷阱 知乎 编辑:程序博客网 时间:2024/05/07 18:05

Config配置详解

·项目中 模板定界符需要修改,原因是调用jQuery会产生冲突 ,方法 config中 修改 TMPL_L_DELIM =》 ‘《{’右边同理

·数据库在config中的配置可以启用DSN ,‘DB_DSN’=》‘mysql://root:root/localhost:3306/db_name’DB_DSN为数据库的首先参考参数,要注意定义表前缀,不定义表前缀会在调用它库时出现数据表名的冲突,定义如下:

DB_PREFIX=>tp_

·M()等同于new model(),参数需要首字母大写,D()包含M方法的所有方法,唯一不同的是会在调用表之前去判断应用模块中是否包含自定义的数据模型;

·开始编程项目时注意在入口文件中定义开启调试模式:define(APP_DEBUG,true);

·开启pagetrace 会让调试变得更加esay SHOW_PAGE_TRACE=> true;

注意页面调试界面只有在调用 display()方法的时候才会显示,我们可以根据里面的sql调试来查看我的sql语句

·还有一些不常用的config设置:修改模板的后缀 ‘TMPL_TEMPLATE_SUFFIX’=>.tpl、修改模板文件的目录层次 TMPL_FILE_DEPR=>_、修改模板主题 ‘DEFAULT_THEME’=》‘my’ 自动侦测模板主题 ‘TMPL_DETECT_THEME’=》true 设置支持的模板主题列表 ‘THEME_LIST’=》‘my,your’我们在url中添加参数t值为主题名来选择主题就可以了~

路径详解

·tp中的四种路径方式:pathInfo、普通路径、rewrite方式(为了SEO省略入口文件:具体为 修改Apache配置文件将rewrite可用,放一个配置文件到根目录重启服务器即可)、兼容方式 入口文件?S=模块名/动作名/键/值

模板中详解

·在模板中的调试,查看引用路径可以查看浏览器的页面源代码,查看变量使用差错可以在 rutime中的cache查看相应的缓存文件~

·display()要显示其他模块下的界面需要添加参数 如我是Goods模块现在要显示User模块下的test.html 就可以用 $this -> display(User:test)

·$this ->show()显示一个字符串,可以识别html标签的字符串,我们可以用fetch方法将模板文件编程字符串再来用show方法显示出来

·模板中加载js css方法,传统方法调用__PUBLIC__常量;配置模板语法 在config中配置TMPL_PARSE_STRING=>array(__Css__=>css的文件夹路径)

CURD详解

·所谓CURD 即 create update read delete

·add方法每次的返回值是一个整型值为新增主键值的数字

  Delete和save方法返回的是整型值为影响行数的数字

  我们可以根据这些返回值去判断进行下一步的操作

·查询语句:建议用where方法查询的时候必须使用数组作为条件,数组条件默认逻辑为and 如果需要调改 条件逻辑把条件数组$data[_logic]=‘or’就可以了~进行搜索建议只需要把条件数组字段加一个array即可入$data[name]=array(like,%jye%)这个我还没有尝试,一会儿要试一试,剩下的就是区间的限制 有gt eq  between等  注意 notlike 没有空格 not between之间有空格 同in。还有一个统计查询 就是count方法 sum方法avg方法 min方法等 。同样我们可以使用sql语句直接查询 用query方法读取查询(成功后返回一个数组结构)、用execute方法进行更新增加操作(成功后返回影响行数)

·连贯操作:所谓连贯操作就是在核心core文件夹中的model.class.php定义的连贯操作方法进行复制后返回一个 $this 。也就是说使用了连贯操作方法后不仅进行了赋值查询还返回本身可以进行下一个操作;

·如果我们需要获取除了id以外的所有字段显示到模板 我们可以通过 field方法设置,设置方法如下:field(id,true),这个方法很有用,比如我们在模板显示内容的时候必须剔除id字段,就可以使用这个快捷操作~~

原创粉丝点击