#
# ThinkPHP 3.1.2 输出和模型使用 # 讲师:赵桐正 微博:http://weibo.com/zhaotongzheng 本节课大纲: 一、ThinkPHP 3 的输出 (重点) a、通过 echo 等(PHP原生的输出方式)在页面中输出。 ** V -- 负责输出(页面显示),调用一个方法,输出模板文件。 b、通过display方法输出(推荐) 在『模块』中用$this->display();=》指定模板输出 在 项目目录/应用目录/tpl/模块名/{方法名.html} --> 这是模板文件。 ** 将【模块】中的动态数据 交给 【模板】 ** 想分配变量可以使用assign方法 在【模块】中: $this->assign('data',$name); ->data是一个标识 在【模板】中:使用定点符({$data} -- 花括号和$ + 标识)嵌入这个变量(data) ** 『模板』花括号 -》 是定界符(ThinkPHP默认的) -- 不太建议使用这种默认的花括号定界符。 @@ 如何修改左右定界符?? c、修改左右定界符 需要修改配置文件中的配置项 'TMPL_L_DELIM'=>'<{', //修改左定界符 'TMPL_R_DELIM'=>'}>', //修改右定界符 二、ThinkPHP 3 的【模型】使用 (重点) M -- 负责对数据的操作,如:从数据库中读取数据。 ** 如何从DB读取数据。(获取数据) *** 新建数据库,打开localhost/phpmyadmin, 新建数据库:【库名】,获取【utf8_general_ci】 表结构: 存储引擎:MyISAM;(默认选择的InnoDB可以开启“事务”) 整理:utf8_general_ci *** 插入数据 ** 怎么把数据取出来??? 1、(在『模块』中操作)要实例化一个类, 需要在方法中通过new Model(表名)的形式操作数据库 $m=new Model('User'); //建议U大写 $arr=$m->select(); //select方法 -》 返回表中所有数据。 ***** var_dump($arr); //var_dump方法会返回变量的值, ***** dump($arr,1,"<pre>",0); //用于格式化输出变量值 'DB_TYPE'=>'mysql', //设置数据库类型 'DB_HOST'=>'localhost',//设置主机 'DB_NAME'=>'thinkphp',//设置数据库名 'DB_USER'=>'root', //设置用户名 'DB_PWD'=>'', //设置密码 'DB_PORT'=>'3306', //设置端口号 'DB_PREFIX'=>'tp_', //设置表前缀 /*new class*/ 也可以使用DSN方法进行配置(在配置文件中) 'DB_DSN'=>'mysql://root:111@localhost:3306/thinkphp',//使用DSN方式配置数据库信息 //间隔符是冒号(:) *** 如果两种方式同时存在,以『DSN方式为优先』 @@ 还有一种【简单实用模型的方式】 M() 等效为 new Model(); $m=M('User'); $arr=$m->select(); 使用模型的实例可以对数据进行操作,操作的工作一般就是对数据库进行 【增删改查 CURD】 增 -C Create $m->add()//实际的方法 删 -D Delete $m->delete() 改 -U Update $m->save()//实际的方法 查 -R Read $m->select() 三、补充 (了解) a、在【模板】中,可以遍历数组 <volist name='data' id='vo'> <!-- name='data' 是volist的标识名(data)--> <{$vo.id}>----<{$vo.username}>-----<{$vo.sex}><br/> </volist> b、我们可以开启调试功能中的page_trace 1.开启调试功能 //3.开启调试模式 define('APP_DEBUG',true); 2.我们需要设置配置文件,开启页面trace 'SHOW_PAGE_TRACE'=>true,//开启页面Trace