ImageVerifierCode 换一换
格式:DOCX , 页数:45 ,大小:39.06KB ,
资源ID:25999129      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/25999129.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(笔记自己整理的thinkphp笔记分析解析.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

笔记自己整理的thinkphp笔记分析解析.docx

1、笔记自己整理的thinkphp笔记分析解析ThinkphpLesson_1 ThinkPHP.3.1.2.介绍及安装1. 总结a) Home放前台,Admin放后台, Public放共有的资源2. 配置gvim 打开安装目录下的_vimrc文件,添加 set nu! 显示行数 colorscheme darkblue 背景颜色设置为深蓝色 gvim配置不自动生成备份文件默认情况下用gVim编辑文件时,会自动生成带的备份文件。如果不想在编辑文件时自动生成备份文件的话,可以这么做:打开gVim安装目录下的vimrc_example.vim,将其中的如下部分中的else语句用引号注释掉:if has

2、(vms)set nobackup do not keep a backup file, use versions insteadelseset backup keep a backup file即将上面四句改为:if has(vms)set nobackup do not keep a backup file, use versions instead else set backup keep a backup file里,else部分用双引号注释掉即可。set backup是设置使用自动生成备份文件的命令。 windows上gvim的编码设置Windows系统默认的编码是cp936,所以用

3、gvim一打开文件,默认是用gb2312编码打开的。这导致很多时候打开的文件是乱码,不能正常显示,那要怎么解决这个问题呢?很简单,看下面的设定:打开gvim,到菜单栏找到“编辑”,在下拉菜单找到“启动设定” 点击 “启动设定” 进去,你会看到相应的配置文件 在文件的末尾加入如下设定:set encoding=utf-8set fileencodings=utf-8,chinese,latin-1if has(win32)set fileencoding=chineseelseset fileencoding=utf-8endifsource $VIMRUNTIME/delmenu.vimsou

4、rce $VIMRUNTIME/menu.vimlanguage messages zh_CN.utf-8保存后退出gvim,重新启动,惊喜出现了,乱码不见了,是不是很简单,可以动手试一试了!3. ThinkPHP核心文件介绍 ThinkPHP.php 框架入口文件 Common 框架公共文件 Conf 框架配置文件 Extend 框架扩展目录 Lang 核心语言包目录 Lib 核心类库目录 Behavior 核心行为类库 Core 核心基类库 Driver 内置驱动 Cache 内置缓存驱动 Db 内置数据库驱动 TagLib 内置标签驱动 Template 内置模板引擎驱动 Templat

5、e 内置模板引擎 Tpl 系统模板目录4. 项目目录结构及说明 Home 前台应用文件夹 Common 项目公共文件目录 Conf 项目配置目录 Lang 项目语言目录 Lib 项目类库目录 Action Action类库目录 Behavior 行为类库目录 Model 模型类库目录 Widget Widget类库目录 Runtime 项目运行时目录 Cache 模板缓存目录 Data 数据缓存目录 Logs 日志文件目录 Temp 临时缓存目录 Tpl 项目模板目录Lesson_2 ThinkPHP.3.1.2.MVC模式和URL访问1. 字符串串接的方法使用 . 分割的两个字符串会在显示时

6、串接起来2. 开启调试功能有时由于缓存的原因,导致自己做的修改不能立即生效, 此时删除Runtime文件夹即可, 也可以开启调试模式, 这样系统不会再缓存. 但是建议在项目搭建到服务器时,关闭调试模式 开启调试功能(在项目文件夹下的index.php中)define(APP_DEBUG,true); 我们需要设置配置文件(Conf/config.php),开启页面traceSHOW_PAGE_TRACE=true,/开启页面Trace3. ThinkPHP的MVC对应的目录 M 项目目录/应用目录/Lib/Model V 项目目录/应用目录/Tpl C 项目目录/应用目录/Lib/Action

7、4. url的4种访问方式 PATHINFO 模式 - 重点! http:/域名/项目名/入口文件/模块名/方法名/键1/值1/键2/值2 例如: http:/localhost/thinkPHPTest/Index.php/Index/show/name/yinliang 访问的是 HomeLibAction IndexAction.class.php的index方法,并将name=yinliang传递给后台 普通模式 http:/域名/项目名/入口文件?m=模块名&a=方法名&键1=值1&键2=值2 例如: http:/localhost/thinkPHPTest/Index.php?m=

8、Index&a=show&name=yinliang&age=12 REWRITE模式 http:/域名/项目名/模块名/方法名/键1/值1/键2/值2 兼容模式 http:/域名/项目名/入口文件?s=模块名/方法名/键1/值1/键2/值2Lesson_3,4 ThinkPHP.3.1.2.输出和模型使用1. 配置项目文件详解(_ROOT_HomeConfconfig.php)URL_PATHINFO_DEPR=/,/修改URL的分隔符TMPL_L_DELIM=, /修改右定界符DB_TYPE=mysql, /设置数据库类型DB_HOST=localhost,/设置主机DB_NAME=thi

9、nkphp,/设置数据库名DB_USER=root, /设置用户名DB_PWD=, /设置密码DB_PORT=3306, /设置端口号DB_PREFIX=tp_, /设置表前缀DB_DSN=mysql:/root:localhost:3306/thinkphp,/使用DSN方式配置数据库信息SHOW_PAGE_TRACE=true,/开启页面TraceTMPL_TEMPLATE_SUFFIX=.html,/更改模板文件后缀名TMPL_FILE_DEPR=_,/修改模板文件目录层次TMPL_DETECT_THEME=true,/自动侦测模板主题THEME_LIST=your,my,/支持的模板主

10、题列表TMPL_PARSE_STRING=array( /添加自己的模板变量规则 _CSS_=_ROOT_./Public/Css, _JS_=_ROOT_./Public/Js,),LAYOUT_ON=true,/开启模板渲染URL_CASE_INSENSITIVE=true,/url不区分大小写URL_HTML_SUFFIX=html|shtml|xml,/限制伪静态的后缀APP_GROUP_LIST = Home,Admin, /项目分组设定DEFAULT_GROUP = Home, /默认分组2. 项目配置(_ROOT_index.php)3. 获取表单中的数据html中的form表单

11、如下 用户名: 密    码: 验证码: 获取表单数据的Action对象函数如下 public function do_login() echo fasdfasdfsd; dump($_POSTusername); 注:如果表单中的method=get,则上述函数中的$_POST要改为$_GET4. 超链接地址的写法同项目下的超链接可不写ip地址 如要访问项目thinkphp下的UserAction中的delete函数,可写为 a href=/thinkphp/index.php/User/delete?id=delete但是为了防止因项目名称(thin

12、kphp)的更改,导致系统不能使用,可使用”_URL_”替换”/thinkphp/index.php/User/”,如以上地址改写为a href=_URL_/delete?id=delete5. ThinkPHP 3 的输出a) 通过 echo 等PHP原生的输出方式在页面中输出b) 通过display方法输出,如想分配变量可以使用assign方法,如在Action中assign(name,yinliang); /给变量name分配值yinliang $this-display(); /输出HomeTplIndexindex.html public function show() echo s

13、how: hello world!; ?html页面中显示的方法:在HomeTplIndexindex.html中要访问name变量可以在文件中添加 $name(修改了左右定界符的则把,分别修改为修改后的左右定界符)如: Hello $name 6. 建议修改左右定界符(为了防止$data 与Jquery语法混淆)休要修改配置文件(Conf/config.php)中的配置项TMPL_L_DELIM=, /修改右定界符7. ThinkPHP 3 的模型使用 (与数据库链接,操作数据库)a) 创建数据库的步骤i. 进入phpmyadmin URL为http:/127.0.0.1/phpmyadmi

14、n/ii. 点击数据库标签跳转到创建数据库的页面iii. 左侧的输入框输入数据库的名字(例如 thinkphp3), 右侧选择数据库编码为 utf8_general_ci 点击创建iv. 点击创建的数据库(例如 thinkphp3),即可创建表v. 先输入要创建的表的名字, 再输入标的字段数,点击执行vi. 接下来的页面 A_I表示自增, 索引下拉列表可以选择主键,唯一等属性, 整理表示编码格式vii. 存储引擎选择MyISAMviii. .b) 配置数据库(在Conf/config.php中配置数据库相关信息) DB_TYPE=mysql, /设置数据库类型 DB_HOST=localhos

15、t,/设置主机 DB_NAME=thinkphp,/设置数据库名 DB_USER=root, /设置用户名 DB_PWD=, /设置密码 DB_PORT=3306, /设置端口号 DB_PREFIX=tp_, /设置表前缀加表前缀是为了更好的区分表,比如 cw_代表财务 cg_代表采购,如果没有表前缀,则将tp_去掉即可注: 也可以使用DSN方法进行配置DB_DSN=mysql:/root:localhost:3306/thinkphp,/使用DSN方式配置数据库信息如果两种方式同时存在,以DSN方式为优先c) 在Action的index函数中获取值 public function index

16、() $m=new Model(User);/记住U大写 $arr=$m-select();/user表中的所有数据都被放到数组$arr中$this-assign(name,$arr1username);/将name赋值为数组$arr中下标为/1的元素的username的值 $this-display();d) 还有一种简单实用模型的方式 M() 等效为 new Model(); $m=M(User); $arr=$m-select();e) 使用模型的实例可以对数据进行操作,操作的工作一般就是对数据库进行 增删改查 CURD 增 -C Create $m-add() 删 -D Delete

17、$m-delete() 改 -U Update $m-save() 查 -R Read $m-select()f) 模板可以遍历数组:html页面中 -在Action中的index中给array赋值public function index() $m=new Model(User); $arr=$m-select(); $this-assign(array,$arr); $this-assign(name,$arr1username); $this-display();Lesson_5,6,7 ThinkPHP.3.1.2.输出和模型使用.21. ThinkPHP 3.1.2 CURD特性a)

18、 ThinkPHP 3 读取数据 对数据的读取 Read $m=new Model(User); $m=M(User); select $m-select();/获取所有数据,以数组形式返回 find $m-find($id);/获取单条数据 getField(字段名)/获取一个具体的字段值 $arr=$m-where(id=2)-getField(username);b) ThinkPHP 3 创建数据对数据的添加 Create $m=new Model(User); $m=M(User); $m-字段名=值 $m-add(); 返回值是新增的id号代码示例: public function

19、 add() $m=new Model(User); $m-username=$_POSTusername; $m-sex=$_POSTsex; $newId=$m-add(); if($newId0) $this-success(Add new user successfully!,index); else $this-error(Add new user failed!,index); c) ThinkPHP 3 删除数据$m=M(User); $m-delete(2); /删除id为2的数据 $m-where(id=2)-delete(); /与上面效果相同,也是删除id为2的数据 返回

20、值是受影响行数代码示例: public function delete() $id=$_GETid; $m=new Model(User); var_dump($id); / $m-delete(11); $count=$m-where(id=.$_GETid)-delete(); if($count0) $this-success(Data have been delete successfully!); / $this-success(数据删除成功!); else $this-error(The operation of deleting data exit error!); / $thi

21、s-error(数据删除失败!); d) ThinkPHP 3 更新数据$m=M(User); $dataid=1; $datausername=ztz2; $m-save($data); 返回值是受影响行数代码示例: public function update() $m=new Model(User); $dataid=$_POSTid; $datausername=$_POSTusername; $datasex=$_POSTsex; $count=$m-save($data); if($count0) $this-success(Data have been modify succes

22、sfully!,index); else $this-error(The operation of modifing data exit error!,index); Lesson_8,9,10 ThinkPHP.3.1.2.查询方式的一般使用1. ThinkPHP 3.1.2 查询方式a) find只能查询一天记录,select可以查询多条记录i. 普通查询方式ii. 字符串$arr=$m-where(sex=0 and username=gege)-find();iii. 数组 $datasex=0; $datausername=gege; $arr=$m-where($data)-fin

23、d(); 注意:这种方式默认是and的关系,如果使用or关系,需要添加数组值 $datasex=0; $datausername=gege; $data_logic=or;iv. 表达式查询方式 $dataid=array(lt,6); $arr=$m-where($data)-select(); EQ 等于 NEQ不等于 GT 大于 EGT大于等于 LT 小于 ELT小于等于示例代码: public function show() $m=new Model(User); $dataid=array(LT,25); $arr=$m-where($data)-select(); var_dump

24、($arr); $this-display(); b) LIKE 模糊查询 $datausername=array(like,%ge);/查询username以ge结尾的user$datausername=array(like,%ge%);/查询username包含ge的user $arr=$m-where($data)-select();c) NOTLIKE $datausername=array(notlike,%ge%); /查询username不包含ge的user $arr=$m-where($data)-select(); 注意:如果一个字段要匹配多个通配符 $datausernam

25、e=array(like,array(%ge%,%2%,%五%),and);/如果没有第三个值,默认关系是or关系 $arr=$m-where($data)-select();d) BETWEEN $dataid=array(between,array(5,7); $arr=$m-where($data)-select(); /SELECT * FROM tp_user WHERE ( (id BETWEEN 5 AND 7 ) ) $dataid=array(not between,array(5,7);/注意,not 和 between中间一定要有空格 $arr=$m-where($data)-select();e) IN $dataid=array(in,array(4,6,7); $arr=$m-where($data)-select(); /SELECT * FROM tp_user WHERE ( id IN (4,6,7) ) $dataid=arra

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1