仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 5630|回复: 20
打印 上一主题 下一主题

[学习教程] PHP网页编程之thinkphp的field办法的用法总结,也许还...

[复制链接]
若天明 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:30:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
让好朋友来看看,嘿,看咱写的多棒,然后再在网上宣传一下。     
  ThinkPHP的联贯操作办法中field办法有良多的利用技能,field办法次要目标是标识要前往或操作的字段,上面具体道来。
1、用于查询

  在查询操作中field办法是利用最频仍的。

  • $Model->field('id,title,content')->select();
  这里利用field办法指定了查询的了局集中包括id,title,content三个字段的值。履行的SQL相当于:

  • SELECT id,title,content FROM table
  固然,除select办法以外,一切的查询办法,包含find等都可使用field办法,这里只是以select为例申明。
下面的例子也能够利用数组取代:

  • $Model->field(array('id','title','content'))->select();
  终究履行的SQL和下面等效。
^_^仿佛看起来数组的用法过于庞杂,不外先别下这个结论,前面就会分明数组用法的优点了。
数组体例的界说可觉得某些字段界说别号,例如:

  • $Model->field(array('id','title'=>'name','content'))->select();
  履行的SQL相当于:

  • SELECT id,title as name,content FROM table
  假如你但愿直接利用:

  • $Model->field('id,title as name,content')->select();
  能够会失掉毛病的了局。
关于一些更庞杂的字段请求,数组的优势则加倍分明,例如:

  • $Model->field(array('id','concat(name,'-',id)'=>'truename','LEFT(title,7)'=>'sub_title'))->select();
  履行的SQL相当于:

  • SELECT id,concat(name,'-',id) as truename,LEFT(title,7) as sub_title FROM table
  想必人人都分明了,关于需求在field中利用SQL函数的情形,数组体例可以很好的处理。
是否是field办法就这么点感化了呢?假如你这么以为,那就太低估ThinkPHP的field办法了,ThinkPHP思索的细节远比你想象的要周密^_^。
先看上面的情形,假如有一个表有十分多的字段,并且有两个需求,起首请求需求获得一切的字段,这个或许很复杂,由于不挪用field办法或直接利用空的field办法都能做到,现实上,切实其实如斯:

  • $Model->select();
  • $Model->field()->select();
  • $Model->field('*')->select();
  下面三个用法是等效的,都相当于履行SQL:

  • SELECT * FROM table
  然而这并非我说的获得一切字段,我但愿显式的挪用一切字段(关于对功能请求对照高的体系,这个请求其实不过度,最少是一个对照好的习气),那末OK,依然很复杂,上面的用法可以完成预期的感化:

  • $Model->field(true)->select();
  fied(true)的用法会显式的获得数据表的一切字段列表,哪怕你的数据表有100个字段。
第二个需求是我但愿获得扫除content字段(文本字段的值十分耗内存)以外的一切字段值,咱们就能够利用field办法的扫除功效,例以下面的体例就能够完成所说的功效:

  • $Model->field('content',true)->select();
  要扫除更多的字段也能够:

  • $Model->field('user_id,content',true)->select();
  • //或用
  • $Model->field(array('user_id','content'),true)->select();
2、用于写入

  除查询操作以外,field办法还有一个十分主要的平安功效--字段正当性检测(注重:该功效3.1版本入手下手才干撑持)。field办法联合create办法利用就能够完成表单提交的字段正当性检测,假如咱们在表单提交的处置办法中利用了:

  • $Model->field('title,email,content')->create();
  即暗示表单中的正当字段只要title,email和content字段,不管用户经由过程甚么手腕更改或添加了阅读器的提交字段,城市直接屏障。由于,其他是一切字段咱们都不但愿由用户提交来决意,你可以经由过程主动完胜利能界说额定的字段写入。
总结

  从field办法的用法咱们应当可以懂得甚么叫做小办法大用法,固然,咱们只是但愿ThinkPHP给你的开辟带来更多的便利和惊异,接待人人一同来分享你的用法和心得!
学会了PHP,那么学其他的语言,肯定速成,反过来也一样,如果你之前学过其他的语言,那么学PHP肯定快。
愤怒的大鸟 该用户已被删除
沙发
发表于 2015-2-3 23:51:18 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
第二个灵魂 该用户已被删除
板凳
发表于 2015-2-9 07:35:57 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
飘飘悠悠 该用户已被删除
地板
发表于 2015-2-27 04:31:08 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
5#
发表于 2015-2-28 10:33:50 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
变相怪杰 该用户已被删除
6#
发表于 2015-3-1 18:04:11 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
若天明 该用户已被删除
7#
 楼主| 发表于 2015-3-10 21:40:25 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
admin 该用户已被删除
8#
发表于 2015-3-12 09:58:23 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
再现理想 该用户已被删除
9#
发表于 2015-3-19 19:49:44 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
谁可相欹 该用户已被删除
10#
发表于 2015-3-20 07:22:33 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
蒙在股里 该用户已被删除
11#
发表于 2015-3-26 19:33:26 | 只看该作者
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
分手快乐 该用户已被删除
12#
发表于 2015-4-26 15:10:48 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
不帅 该用户已被删除
13#
发表于 2015-5-2 00:48:24 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
因胸联盟 该用户已被删除
14#
发表于 2015-7-3 20:26:08 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
若相依 该用户已被删除
15#
发表于 2015-7-17 01:46:03 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
只想知道 该用户已被删除
16#
发表于 2015-7-17 23:12:12 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
乐观 该用户已被删除
17#
发表于 2015-9-27 03:55:54 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
山那边是海 该用户已被删除
18#
发表于 2015-10-2 09:38:33 | 只看该作者
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
小妖女 该用户已被删除
19#
发表于 2015-10-2 09:40:01 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
简单生活 该用户已被删除
20#
发表于 2015-10-15 21:09:46 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-4-21 00:00

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表