>php教程 >php手册 >thinkphp 总结 转,thinkphp总结

thinkphp 总结 转,thinkphp总结

WBOY
WBOY원래의
2016-06-13 09:29:01859검색

thinkphp 总结 转,thinkphp总结

用ThinkPHP做过几个项目后,感觉这个框架蛮不错的,很适合自己的逻辑习惯,开发起来也快捷,呵呵, 总结了一些项目中常用的东东,希望对初学TP的朋友有所帮助! 
约定:
如:
定义控制器类

记录的修改:


记录查询

$User->getDbFields() //获取当前数据字段
$Model = new Model() // 实例化一个 model 对象 没有对应任何数据表
$objrs = $Model->query("select * from think_user where status=1") //自定义查询

模板:

$this->assign('name',$value); //在 Action 类里面使用 assign 方法对模板变量赋值,无论何种变量类型都统一使用 assign 赋值

$this->display() // 输出模版文件

批量赋值

模板标签:

{ } 或 {// 注释内容 } //模板注释
为了方便模板定义,无论输出的模板变量是数组还是对象,都可以用下列统一方式输出:
使用函数:
系统变量
快捷输出
包含外部文件
循环输出
模版赋值:
模版定义:
注意 name 和 id 表示的含义
// 输出偶数记录
// 输出 key
//子循环输出
Switch 标签
比较标签

If标签
C操作
A操作
D操作
S操作
F操作


(IN parameter1 INTEGER)

BEGIN

DECLARE variable1 CHAR(10);

IF parameter1 = 17 THEN

SET variable1 = 'birds';

ELSE

SET variable1 = 'beasts';

END IF;

Insert INTO table1 VALUES (variable1);

END

ThinkPHP系统常量

THINK_PATH   // ThinkPHP 系统目录
CONFIG_PATH   //项目配置文件目录
MEMORY_LIMIT_ON // 是否有内存使用限制
预定义常量
上传概述
基本上传功能



批量上传
需要注意,UploadFile上传类对多文件上传并不是采用 
Ajax文件上传


自动生成缩略图
设置后系统在上传后会自动生成相同格式的缩略图。系统默认的缩略图路径是上传文件所在目录,并且在文件中后面添加_thumb以标识缩略图文件。缩略图路径可以在项目配置文件中配置。 
生成多缩略图
上面的例子表示生成三个大小的缩略图,并规定了缩略图文件名后面添加的后缀,和三种缩略图的宽高尺寸。
更多上传设置
ThinkPHP在Action来中还提供了和UploadFile类的上传设置接口,方便在客户端进行更多的参数设置进行上传控制。
下面列举下主要的参数,更多的参数可以参考框架的Action类中的_upload方法。

// 设置覆盖方式上传 
// 设置允许上传文件类型 
// 上传文件保存目录,要注意设置可写权限 
// 上传文件名命名规则,支持函数,例如time uniqid com_create_guid 系统默认设置为uniqid保证上传文件名不会重复,如果不存在设置函数,则使用规则字符串作为上传文件名 
// 设置上传文件大小 
// 设置上传数据表,默认的上传数据记录在当前模块表中 // 设置上传文件对应的数据编号,通常不用设置,除非特别需要
// 设置上传用户id,通常不用设置,系统自动获取当前登录用户编号 
  原文:http://blog.sina.com.cn/s/blog_813e149b01010o3z.html

thinkphp中怎实现跳转到其他网站

5.15 重定向
Action类的redirect方法可以实现页面的重定向功能。

redirect方法的参数用法和U函数的用法一致(参考上面的URL生成部分),例如:

上面的用法是停留5秒后跳转到News模块的category操作,并且显示页面跳转中字样,重定向后会改变当前的URL地址。

如果你仅仅是想重定向要一个指定的URL地址,而不是到某个模块的操作方法,可以直接使用redirect方法重定向,例如:

Redirect方法的第一个参数是一个URL地址。

5.14 页面跳转
在应用开发中,经常会遇到一些带有提示信息的跳转页面,例如操作成功或者操作错误页面,并且自动跳转到另外一个目标页面。系统的Action类内置了两个跳转方法success和error,用于页面跳转提示,而且可以支持ajax提交。使用方法很简单,举例如下:

Success和error方法都有对应的模板,并且是可以设置的,默认的设置是两个方法对应的模板都是:

模板文件可以使用模板标签,并且可以使用下面的模板变量:

$msgTitle:操作标题

$message :页面提示信息

$status :操作状态 1表示成功 0 表示失败 具体还可以由项目本身定义规则

$waitSecond :跳转等待时间 单位为秒

$jumpUrl :跳转页面地址

success和error方法会自动判断当前请求是否属于Ajax请求,如果属于Ajax请求则会调用ajaxReturn方法返回信息,具体可以参考后面的AJAX返回部分。

这些事thinkphp3.0手册上有的,自己下载手册看看
 

ThinkPHP中怎连接数据库[转]

ThinkPHP中如何连接数据库操作数据库之前,我们要建立一个Model。在说Model和Action之前,先交代一下Model和Action的保存位置。Model保存在 程序目录中lib/Model文件夹中,Action保存在程序目录中lib/Action文件夹中。ThinkPHP系统默认的Model规则是这样子 的:Model文件文明名类似“Model类名+Model.class.php,并且Model默认的操作数据库表名字为我们在config.php中 定义的DB_PREFIX+Model类名,Model类名和文件名需要大写”在Model文件中,定义一个类,扩展Model类,一般写法如下class 类名Model extends Model{}那么,现在我们来定义一个Model吧。由于我们数据库表名称为cms_article,class ArticleModel extends Model{}文件保存为ArticleModel.class.php。什么都不用写,一个Model已经定义完成了。那么现在,我们继续我们的Action知识吧。Action和Model很多的规则很接近,不同的是Action不直接操作数据库,而是需要通过Model对数据库进行操作。现在我们来定义一个Action来完成操作。class IndexAction extends Action{function index(){$Article = D(”Article”);}}将文件保存为IndexAction.class.php。OK,现在我们刷新一下首页,如果没有任何的提示,那么恭喜你,数据库连接Model、 Action定义都是正常的。Action中D方法就是调用Model,Article就是我们刚刚定义的那个 ArticleModel.class.php中的Model类~也就是说在定义Model的同时,我们已经完成了对数据库的连接和对数据库表操作的准 备~
 

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.