摘要:我们做PHP开发会经常用到thinkphp,thinkphp是PHP一个非常常用的框架,但是目前有许多刚参加PHP培训或者是对PHP开发感兴趣的小伙伴对thinkphp开发不是很了解,本篇文章扣丁学堂小编就thinkphp开发技巧简单的给大...
我们做PHP开发会经常用到thinkphp,thinkphp是PHP一个非常常用的框架,但是目前有许多刚参加PHP培训或者是对PHP开发感兴趣的小伙伴对thinkphp开发不是很了解,本篇文章扣丁学堂小编就thinkphp开发技巧简单的给大家分享一下。
扣丁学堂PHP培训之thinkphp开发技巧:
(1)不要在模板中直接使用{$_GET.id}或者{$Think.get.id},因为{$_GET.id} {$Think.get.id} 这两种方式都没有任何过滤,容易被XSS。建议使用I方法,即:{:I("get.id")}
(2)在thinkphp中如果需要获取数据库中某个表的字段该怎么办呢?示例如下:
查看代码打印
$user=M("user");
$fields=$user->getDbFields;
结果将返回一个由表字段组成的一个一维数组。
(3)数据修改的过程中如果我们只需要修改某个字段的值,就可以使用setField方法,而不需要每次都调用save方法,例如:
$user->where("id=2")->setField("username","www.phpernote.com");
(4)涉及到比较的情况下不一定非得使用if condition这种形式的,还可以按如下的形式来写:
查看代码打印
value // name 变量的值等于 phpernote 就输出
value // name 变量的值不等于 phpernote 就输出
value // name 变量的值大于 5 就输出
value // name 变量的值大于等于 5 就输出
value // name 变量的值小于 5 就输出
value // name 变量的值小于等于 5 就输出
(5)在thinkphp的删除操作中可以不使用where直接使用delete来执行删除,例如:
查看代码打印
$User->delete("2,5");//删除主键为2和5的数据
(6)关于thinkphp的几个快速操作的函数的用法说明。
C操作,操作(动态)配置: 主要用于Action方法里面
获取:C("配置参数")
设置:C("配置参数 ",新值)
A操作,快速创建Action对象:
$action=A("User"); 等效于 $action=new UserAction;
D操作,快速创建模型数据对象:
$model=D("User"); 等效于 $model=new UserModel;
S操作,快速操作缓存方法
获取:S("name")
设置:S("name","value");
删除:S("name",NULL);
F操作,快速文件数据保存方法,使用方法与S操作一样。
(7)Model命名时,默认要和数据库里的表名一致,如
PhpernoteUserModel.class.php对应数据库的名称应该是 "前缀_phpernote_user",在程序代码中的调用应该是:D("PhpernoteUser");
(8)开发的过程中如不需要进行缓存,可以在入口文件中进行如下定义:
查看代码打印
define("NO_CACHE_RUNTIME",true);
(9)在开发的过程中如果需要知道一些额外的信息,可在配置文件中进行相应的定义,下面给出几个比较常见的信息定义方式:
查看代码打印
"SHOW_RUN_TIME"=>true,//运行时间显示
"SHOW_ADV_TIME"=>true,//显示详细的运行时间
"SHOW_DB_TIMES"=>true,//显示数据库的操作次数
"SHOW_CACHE_TIMES"=>true,//显示缓存操作次数
"SHOW_USE_MEM"=>true,//显示内存开销
(10)自定义Model类并在实例化模型(模型就是数据库操作类)时使用,举例如下:
a、在工程目录下的Lib目录下的Model目录下建立一个IndexModel.class.php,然后里面写一个方法play,此方法内容体为循环输出1至10。
b、那么在Action中的方法里,还可以这么写:
查看代码打印
$index=M("index","IndexModel");//这里可以加上自定义的模型类一起实例化
$index->play;
那么会输出1至10。
(11)使用thinkphp的过程中如果需要更改默认的模板后缀名,可以在配置文件中做如下定义:
查看代码打印
"TMPL_TEMPLATE_SUFFIX" => ".dwt"//这里就将模板后缀名改为了dwt
学习是一个长期的事情,想要成为专业的PHP开发工程师就需要不断的学习,从零开始难免会遇到各种各样的问题。大家也不要担心,如果没有人可以交流,大家可以加入扣丁学堂PHP技术交流群:374332265进行交流学习。
扣丁学堂PHP培训不仅有专业的老师和与时俱进的课程体系,还有大量的PHP视频教程供学员观看学习,喜欢PHP想要学习PHP的小伙伴快快行动吧。
【关注微信公众号获取更多学习资料】
标签: 扣丁学堂PHP培训之thinkphp开发技巧 PHP培训 PHP视频教程 PHP开发工程师