笔记(自己整理的thinkphp笔记)分析解析_第1页
笔记(自己整理的thinkphp笔记)分析解析_第2页
笔记(自己整理的thinkphp笔记)分析解析_第3页
笔记(自己整理的thinkphp笔记)分析解析_第4页
笔记(自己整理的thinkphp笔记)分析解析_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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

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

3、打开的。这导致很多时候打开的文件是乱码,不能正常显示,那要怎么解决这个问题呢?很简单,看下面的设定:打开gvim,到菜单栏找到编辑”,在下拉菜单找到启动设定”点击“启动设定”进去,你会看到相应的配置文件在文件的末尾加入如下设定:set en codi ng=utf-8set filee ncodi ngs=utf-8,ch in ese,lati n-1if has(wi n32)set filee ncodi ng=chi neseelseset filee ncodi ng=utf-8en difsource $VIMRUNTIME/delme nu.vimsource $VIMRUNTI

4、ME/me nu.vimIan guage messages zh_CN.utf-8保存后退出gvim,重新启动,惊喜出现了,乱码不见了,是不是很简单,可以动手试一试了!3. ThinkPHP核心文件介绍IThi nkPHP.php 框架入口文件I Com mon框架公共文件I Conf框架配置文件I Exte nd框架扩展目录ILang 核心语言包目录ILib核心类库目录I| Behavior核心行为类库I|Core核心基类库I| Driver内置驱动II | Cache内置缓存驱动II卜一Db内置数据库驱动II | TagLib内置标签驱动II 1 Template内置模板引擎驱动I1 T

5、emplate内置模板引擎1Tpl系统模板目录4. 项目目录结构及说明Home前台应用文件夹| Com mon项目公共文件目录| Conf项目配置目录| Lang项目语言目录| Lib项目类库目录I| Action Action 类库目录I |Behavior行为类库目录I |Model模型类库目录I1 Widget Widget 类库目录| Run time项目运行时目录I ICache模板缓存目录I卜一Data数据缓存目录I ILogs日志文件目录I 1Temp临时缓存目录1 Tpl项目模板目录Lesson_2 ThinkPHP .3.1.2.MVC 模式和 URL 访问1. 字符串串接的

6、方法使用分割的两个字符串会在显示时串接起来2. 开启调试功能.但是建议在项目搭建到服务器时有时由于缓存的原因,导致自己做的修改不能立即生效,此时删除Run time文件夹即可,也可以开启调试模式,这样系统不会再缓存关闭调试模式开启调试功能(在项目文件夹下的index.php中)defi ne(APP_DEBUG,true);我们需要设置配置文件(Conf/config.php),开启页面traceSHOW_PAGE_TRACE=true, 开启页面 Trace3. ThinkPHP的MVC对应的目录M 项目目录/应用目录/Lib/ModelV项目目录/应用目录/TplC项目目录/应用目录/Li

7、b/Action4. 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&键2=值2 例女口 : http:/localhost/thinkPHPTest/Index.ph

8、p?m=Index&a=show&name=yinliang&age=12REWRITE 模式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_NA

9、ME=thinkphp,/ 设置数据库名 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,

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

11、tml中的form表单如下vform method=post action=_URL_/doo gi n用户名:密      码:验证码:获取表单数据的Action对象函数如下public fun cti on do_log in()echo fasdfasdfsd;dump($_POSTusername);注:如果表单中的 method=get,则上述函数中的$_POST要改为$_GET4. 超链接地址的写法同项目下的超链接可不写ip地址 如要访问项目thinkphp下的UserAction中的delete函数,可写为a href=/th in kph

12、p/i ndex.php/User/delete?id=delete但是为了防止因项目名称(thinkphp)的更改,导致系统不能使用,可使用”_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(); / 输出

13、HomeTpllndexindex.htmlpublic fun cti on show()echo show: hello world!;?html页面中显示的方法:,分别修改为修改后的左右定界符)在HomeTpllndexindex.html中要访问name变量可以在文件中添加$name(修改了左右定界符的则把如:Hello $n ame6. 建议修改左右定界符(为了防止$data 与Jquery语法混淆)休要修改配置文件(Conf/config.php)中的配置项TMPL_L_DELIM=, / 修改右定界符7. ThinkPHP 3的模型使用(与数据库链接,操作数据库)a)创建数据库的

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

15、B_TYPE=mysql,/设置数据库类型DB_HOST=localhost, 设置主机 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的in

16、dex函数中获取值public function in dex()$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();增删改查CURDe)使用模型的实例可以对数据进行操作,操作的工作一般就是对数据库进行增

17、-C Create $m-add() 删-D Delete $m-delete() 改-U Update $m-save()查-R Read $m-select()f) 模板可以遍历数组:html页面中vvolist n ame= arrayid=vo-$vo.username在Action中的index中给array赋值 public fun cti on in dex()$m=new Model(User);$arr=$m-select();$this-assig n( array,$arr);$this-assig n( name,$arr1user name);$this-displa

18、y();Lesson_5,6,7 ThinkPHP .3.1.2.输出和模型使用.21. ThinkPHP 3.1.2 CURD 特性a) ThinkPHP 3读取数据对数据的读取 Read$m=new Model(User);$m=M(User);select$m-select();获取所有数据,以数组形式返回find$m-find($id);获取单条数据getField(字段名)/获取一个具体的字段值 $arr=$m-where(id=2)-getField(user name);b) ThinkPHP 3创建数据对数据的添加 Create$m=new Model(User);$m=M(U

19、ser);$m-字段名=值$m-add();返回值是新增的id号代码示例:public function add()$m=new Model(User);$m-username=$_POSTusername;$m-sex=$_POSTsex;$n ewld=$m-add();if($ newld0)$this-success(Add new user successfully!ndex);else$this-error(Add new user failed!ndex);c) ThinkPHP 3删除数据$m=M(User);$m-delete(2);删除id为2的数据$m-where(id=

20、2)-delete(); /与上面效果相同,也是删除id为2的数据返回值是受影响行数代码示例:public function delete()$id=$_GETid;$m=new Model(User);var_dump($id);/$m-delete(11);$coun t=$m-where(id=.$_GETid)-delete();if($cou nt0)$this-success(Data have bee n delete successfully!);/$this-success(数据删除成功!);else$this-error(The operati on of delet in

21、g data exit error!);/ $this-error(数据删除失败!);d) ThinkPHP 3更新数据$m=M(User);$dataid=1;$datauser name=ztz2:$m-save($data);返回值是受影响行数代码示例:public function update()$m=new Model(User);$dataid=$_POSTid;$datausername=$_POSTusername;$datasex=$_POSTsex;$cou nt=$m-save($data);if($co un t0)$this-success(Data have be

22、e n modify successfully!ndex);else$this-error(The operati on of modifi ng data exit error!,i ndex);Lesson_8,9,10 ThinkPHP 312 查询方式的一般使用1. ThinkPHP 3.1.2 查询方式a) find只能查询一天记录,select可以查询多条记录i. 普通查询方式ii字符串$arr=$m-where(sex=O and user name=gege)-fi nd();iii. 数组$datasex=0;$datauser name=gege:$arr=$m-where

23、($data)-fi nd();注意:这种方式默认是and的关系,如果使用or关系,需要添加数组值$datasex=0;$datauser name=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($arr)

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

25、关系$datausername=array(like,array(%ge%,%2%,% 五 %),and);/ 如果没有第三个值,默认关系是 $arr=$m-where($data)-select();d) BETWEEN$dataid=array(betwee n,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-w

26、here($data)-select();e)IN$dataid=array(i n,array(4,6,7);$arr=$m-where($data)-select();/SELECT * FROM、tp_user WHERE ( id IN (4,6,7)$dataid=array( not in ,array(4,6,7);$arr=$m-where($data)-select();/SELECT * FROM、tp_user WHERE ( id NOT IN (4,6,7)f)区间查询$dataid=array(array(gt,4),array(lt,10); 默认关系是 and

27、的关系/SELECT * FROM、tp_user WHERE ( (id 4) AND (id where($data)-co un t();max获取最大数echo $m-max(id);min获取最小数echo $m-mi n(id);avg获取平均数echo $m-avg(id);sum/获取总和echo $m-sum(id);h) SQL直接查询query主要数处理读取数据的成功返回数据的结果集失败返回boolean false$m=M();$result=$m-query(select * from tp_user where id 50);var_dump($result);ex

28、ecute用于更新个写入操作成功返回影响行数失败返回boolean false$m=M();$result=$m-execute(i nsert into tp_user(user name) values(ztz3); var_dump($result);2.总结a)多条件检索时,从页面传递给后台的某个值可能为空可以使用isset函数进行判断,如:if(isset($_POST username &)$_POST username !=njll$where username = array( like , ” $_POST username %Lesson 11 ThinkPHP 3.1.2

29、 连贯操作1. PHP中类的构造方法所有类的构造方法都如下,只是参数可以不一样fun cti on _con struct($tableName)2. 字符串操作函数AddSlashes:字符串加入斜线。bin2hex:二进位转成十六进位。Chop:去除连续空白。Chr:返回序数值的字符。chunk_split:将字符串分成小段。convert_cyr_string:转换古斯拉夫字符串成其它字符串。 crypt:将字符串用 DES编码加密。echo:输出字符串。explode:切开字符串。flush:清出输出缓冲区。get_meta_tags:抽出文件所有 meta标记的资料。 htmlspe

30、cialchars:将特殊字符转成 HTML格式。 htmlentities:将所有的字符都转成HTML字符串。implode:将数组变成字符串。join:将数组变成字符串。ltrim:去除连续空白。md5:计算字符串的 MD5哈稀。nl2br:将换行字符转成。Ord:返回字符的序数值。parse_str:解析 query 字符串成变量。print:输出字符串。printf:输出格式化字符串。quoted_printable_decode:将qp编码字符串转成8位字符串。QuoteMeta:加入引用符号。rawurldecode:从URL专用格式字符串还原成普通字符串。 rawurlencod

31、e:将字符串编码成URL专用格式。setlocale:配置地域化信息。 similar_text:计算字符串相似度。soundex:计算字符串的读音值sprintf:将字符串格式化。strchr:寻找第一个出现的字符。strcmp:字符串比较。strcsp n:不同字符串的长度。strip_tags:去掉 HTML 及 PHP 的标记。StripSlashes:去掉反斜线字符。strlen:取得字符串长度。 strrpos:寻找字符串中某字符最后出现处。 strpos:寻找字符串中某字符最先出现处。 strrchr:取得某字符最后出现处起的字符串。strrev:颠倒字符串。strsp n:找出

32、某字符串落在另一字符串遮罩的数目。 strstr:返回字符串中某字符串开始处至结束的字符串。strtok:切开字符串。strtolower:字符串全转为小写。 strtoupper:字符串全转为大写。 str_replace:字符串取代。strtr:转换某些字符。substr:取部份字符串。trim:截去字符串首尾的空格。 ucfirst:将字符串第一个字符改大写。 ucwords:将字符串每个字第一个字母改大写。3. 常用连贯操作a) where帮助我们设置查询条件b) order对结果进行排序(desc降序排列,asc升序排列)$arr=$m-order(id desc)-select()

33、;$arr=$m-order(array(id=desc,sex=asc)-select();$arr=$m-where($data)-order(id asc)-select();c) limit限制结果limit(2,5)从第二条开始取出 5条limit(2,5)从第二条开始取出5条limit(10)/limit(0,10)d) field设置查询字段n amefield(user name as n ame,id)/ 获取 user name,id 字段,并且将 user name 字段重命名为 field(array(username=name,id)/ 同上 field(id,tru

34、e) /获取除了 id以外的所有字段$arr=$m-where($data)-order(id asc)-limit(2,3)-field(username)-select();只获取 username 字段$arr=$m-where($data)-order(id asc)-limit(2,3)-field(username,id)-select();/ 只获取 username,id 字段e) tablef) groupg) having4. 补充连贯操作alias用于给当前数据表定义别名字符串page用于查询分页(内部会转换成limit)字符串和数字join*用于对查询的join支持字符

35、串和数组union*用于对查询的union支持字符串、数组和对象distinct用于查询的distinct支持布尔值lock用于数据库的锁机制布尔值cache用于查询缓存支持多个参数(以后在缓存部分再详细描述)relation用于关联查询(需要关联模型扩展支持)字符串validate用于数据自动验证数组auto用于数据自动完成数组filter用于数据过滤字符串scope*用于命名范围 字符串、数组Lesson_12,13,14 ThinkPHP 3.1.2 视图1. 模板的使用规则模板文件夹下TPL/分组文件夹/模板主题文件夹/和模块名同名的文件夹Index/和方法名同名的文件index.ht

36、ml ( .tpl) 更换模板文件的后缀名(修改配置文件Conf/config.php)修改模板文件目录层次(修改配置文件Conf/config.php )TMPL_FILE_DEPR=_,修改模板文件目录层次设置成这样后,访问 TplIndexindex.html就会变成访问 TplIndex_index.html 模板主题DEFAULT_THEME=your, 设置默认模板主题需要在TPL下面新建一个your文件夹作为模板主题文件夹2. 输出模板内容a) displaydisplay中没有参数$this-display();可以带参数$this-display(本模块文件夹下的其他模板文件

37、);$this-display(i ndex2);$this-display(其他文件夹下的模板文件);Public模块$this-display(Public:error);/注意,仅仅需要在Tpl下有Public文件夹以及其中的error.html即可,不需要$this-display(其他主题下的文件夹下的模板文件);/需要开启主题支持$this-display(my:I ndex:i ndex);$this-display( 一个 url 路径);$this-display(./Public/error.html); 访问的是 thinkphpPublicerror.html$this

38、-display(./Public/error.html,utf-8,text/xml);$this-show($co nte nt);b) fetch 方法获得模板文件中的内容,以字符串形式返回$conten t=$this-fetch(Public:error);c) show方法不需要模板文件,可以直接输出模板内容$conten t=$this-fetch(Public:error);dump($c onten t);$con te nt=str_replace(h1,i,$co nte nt);$this-show($co nten t);3. 模板中的赋值$this-assign(n

39、ame,赵桐正);$this-name=赵桐正 2;$this-display();4. 模板替换js,css等文件_PUBLIC_ :会被替换成当前网站的公共目录通常是(项目目录/Public/),如thinkphp/Public/,可以用来调用外部的_ROOT_ :会替换成当前网站的地址(不含域名)_APP_:会替换成当前项目的URL地址(不含域名)_GROUP_ :会替换成当前分组的URL地址 (不含域名)_URL_ :会替换成当前模块的URL地址(不含域名).ACTION_ :会替换成当前操作的 URL地址 (不含域名) SELF :会替换成当前的页面 URL5. 更换模板变量规则,修

40、改配置项TMPL_PARSE_STRING=array(/添加自己的模板变量规则_CSS_=_ROOT_./Public/Css,_JS_=_ROOT_.7Public/Js,),6. 模板主题(同一个URL,选择不同的模板主题,会显示不同的风格)1)实际上就是访问 :项目文件夹/模板主题文件夹/模块/模块内的函数2)如何动态修改模板主题?在后台准备一个功能,修改config.php文件中的默认模板项通过url传递t=主题参数可以修改不同的模板修改配置文件Conf/config.php,添加如下项DEFAULT_THEME=your, 设置默认模板主题,TMPL_DETECT_THEME=tr

41、ue, 自动侦测模板主题 THEME_LIST=your,my,/支持的模板主题列表如要访问my主题则url后加上?t=my,如http:/localhost/th in kphp/i ndex.php/User/i ndex?t=my3)动态更改模板主题1、 在后台准备一个功能,修改config.php文件中的默认模板项2、通过url传递t=主题参数可以修改不同的模板DEFAULT_THEME=your,/ 设置默认模板主题TMPL_DETECT_THEME=true,/ 自动侦测模板主题THEME_LIST=your,my,/支持的模板主题列表7. ThinkPHP自带的验证码相关操作(详

42、见 ThinkPHP3.1.2 完全开发手册 CHM2013-01-15.chm/19.杂项 /19.8 验证码)将thi nkphp的扩展包解压缩 将Exte nd文件夹中所有项拷贝到th in kphpPublicTh in kPHP Exte nd 中在HomeLibAction 中新建PublicAction.class.php并打开填写代码如下?php class PublicActi on exte nds Actio n Public fun ctio n verify() import(ORG .Util.lmage); lmage:buildlmageVerify();bui

43、ldlmageVerify($le ngth,$mode,$type,$width,$height,$verifyName) 的用法Len gth验证码的长度,默认为4位数Model验证子符串的类型,默认为数子,其他支持类型有0子母1数字2大写字母3小写字母4中文5混合Type验证码的图片类型,默认为 pngWidth验证码的宽度,默认会自动根据验证码长度自动计算Height验证码的高度,默认为22verifyName验证码的SESSION己录名称,默认为verify通过 加载图片.加上 onClick=this.src=this.src+?+Math.random()的目的是当点击生成的图片

44、时,图片自动更改后面的+?+Math.random()是为了让浏览器认为加载的是不同的图片,从而不从缓存中直接读取图片,已达到更换图片的效果.后台中验证码验证if($_SESSIONverify != md5($_POSTverify) $this-error(验证码错误!);Lesson 15ThinkPHP 312 模板变量详解1. ThinkPHP 3.1.2中自定义类的创建与加载在PublicThinkPHPExtendLibraryORGMy中新建 Test.class.php文件,内容如下任何函数想引用 Test类,要在函数中添加import(ORG .My.Test);,如pub

45、lic function in dex()import(ORG .My.Test);$obj=new Test;echo $obj-n ame;2. ThinkPHP 3.1.2模板中的变量输出到前台a) 变量输出标量输出数组输出$n ame1b)类似于map的数组的输出后台:$arr=array(k1=yi nlia ng,k2=limi ng);$this-assig n(” name,$arr); $this-display();前台:$n amek2$n ame.k1C)对象输出$n ame:k$n ame-kd)系统变量用法含义例子$Thi nk.server获取 $SERVER$Th in k.server.php self$Thi nk.get获取$GET$Thi nk.get.id$Thi nk.post获取$POST$Th in k.post. name$Thi nk.request获取 $ REQUEST$Think.request.user id$Thi nk.cookie获取$ COOKIE$T

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论