• tp3.2小结


    启用路由
    // 开启路由 'URL_ROUTER_ON' => true,
    配置路由:在模块的配置文件中使用URL_ROUTE_RULES参数进行配置(conf/config.php)
    格式数组:
    'URL_ROUTE_RULES'=>array(
        'news/:year/:month/:day' => array('News/archive', 'status=1'),
        'news/:id'               => 'News/read',
        'news/read/:id'          => '/news/:1',
    ),
    路由规则的定义格式为: '路由表达式'=>'路由地址和传入参数' 或者array('路由表达式','路由地址','传入参数')
    路由表达式包括规则路由和正则路由的定义表达式,只能使用字符串。
    数据的创建
    // 获取表单的POST数据
    $data['name'] = $_POST['name'];
    $data['email'] = $_POST['email'];
     // 更多的表单数据值获取 //……
    创建数据对象create
    $data['name'] = 'ThinkPHP';
    $data['email'] = 'ThinkPHP@gmail.com';
    $User->create($data);

    创建新的数据对象
    // 从User数据对象创建新的Member数据对象
    $User = stdClass();
    $User->name = 'ThinkPHP';
    $User->email = 'ThinkPHP@gmail.com';
    $Member = M("Member");
    $Member->create($User);

    创建完成的数据可以直接读取和修改,例如:

    $data['name'] = 'ThinkPHP';
    $data['email'] = 'ThinkPHP@gmail.com';
    $User->create($data);
    // 创建完成数据对象后可以直接读取数据
    echo $User->name;
    echo $User->email;
    // 也可以直接修改创建完成的数据
    $User->name = 'onethink'; // 修改name字段数据
    $User->status = 1; // 增加新的字段数据

     字段合法性过滤    field方法

    $data['name'] = 'thinkphp';
    $data['email'] = 'thinkphp@gmail.com';
    $data['status'] = 1;
    $data['test'] = 'test';
    $User = M('User');
    $data = $User->field('name,email')->create($data);
    dump($data);  
    数据写入 add()方法
    $User = M("User"); // 实例化User对象
    $data['name'] = 'ThinkPHP';
    $data['email'] = 'ThinkPHP@gmail.com';
    $User->add($data);
    

    如果在add之前已经创建数据对象的话(例如使用了create或者data方法),add方法就不需要再传入数据了。 使用create方法的例子

    $User = M("User"); // 实例化User对象
    // 根据表单提交的POST数据创建数据对象
    if($User->create()){
        $result = $User->add(); // 写入数据到数据库 
        if($result){
            // 如果主键是自动增长型 成功后返回值就是最新插入的值
            $insertId = $result;
        }
    }  

     批量写入

    // 批量添加数据
    $dataList[] = array('name'=>'thinkphp','email'=>'thinkphp@gamil.com');
    $dataList[] = array('name'=>'onethink','email'=>'onethink@gamil.com');
    $User->addAll($dataList);  
    读取数据 读取数据是指读取数据表中的一行数据(或者关联数据),主要通过find方法完成,
    $User = M("User"); // 实例化User对象
    // 查找status值为1name值为think的用户数据 
    $data = $User->where('status=1 AND name="thinkphp"')->find();
    dump($data);
    

    getField方法还可以支持限制数量,例如:

    $this->getField('id,name',5); // 限制返回5条记录
    $this->getField('id',3); // 获取id数组 限制3条记录  

     数据更新 save方法

    $User = M("User"); // 实例化User对象
    // 要修改的数据对象属性赋值
    $data['name'] = 'ThinkPHP';
    $data['email'] = 'ThinkPHP@gmail.com';
    $User->where('id=5')->save($data); // 根据条件更新记录
    也可以改成对象方式来操作:
    $User = M("User"); // 实例化User对象 // 要修改的数据对象属性赋值 $User->name = 'ThinkPHP'; $User->email = 'ThinkPHP@gmail.com'; $User->where('id=5')->save(); // 根据条件更新记录
    更新个别字段 setField方法。
    $User = M("User"); // 实例化User对象
    // 更改用户的name值
    $User-> where('id=5')->setField('name','ThinkPHP');

    数据删除

    $Form = M('Form');
    $Form->delete(5);
    //表示删除主键为5的数据,delete方法可以删除单个数据,也可以删除多个数据,这取决于删除条件,例如:
    $User = M("User"); // 实例化User对象
    $User->where('id=5')->delete(); // 删除id为5的用户数据
    $User->delete('1,2,5'); // 删除主键为1,2和5的用户数据
    $User->where('status=0')->delete(); // 删除所有状态为0的用户数据  

    模板赋值   assign方法 assign方法必须在display和show方法之前调用

    $this->assign('name',$value);
    // 下面的写法是等效的
    $this->name = $value;  

    模板渲染  display方法

    $this->display();
    
    
      




  • 相关阅读:
    bzoj 1232 [Usaco2008Nov]安慰奶牛cheer
    bzoj 1237 [SCOI2008]配对 贪心+dp
    缺8数
    缺8数
    Binary GCD algorithm
    Binary GCD algorithm
    HDU1576 A/B (解法二)【试探法】
    HDU1576 A/B (解法二)【试探法】
    I00002 打印九九乘法表
    I00002 打印九九乘法表
  • 原文地址:https://www.cnblogs.com/sw-3/p/9844014.html
Copyright © 2020-2023  润新知