• [ThinkPHP] 输出、模型的使用


    #
    # 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


  • 相关阅读:
    JDBC的PreparedStatement是什么?
    ArrayList、LinkedList、Vector 的区别。
    final finally finalize区别
    面向对象三大特性
    JDBC访问数据库的基本步骤是什么?
    报表中的地图怎么做?
    报表工具如何实现“点击查看原图”
    玩转报表排名之组内排名
    动态隐藏行
    OUT 了??还没玩转报表超链接
  • 原文地址:https://www.cnblogs.com/lizunicon/p/3805355.html
Copyright © 2020-2023  润新知