zoukankan      html  css  js  c++  java
  • TP5对数据库的操作个人学习过程中的理解分析

    在模型层中进行处理业务逻辑,进行与数据库的数据的操作

    use thinkDb;
    use thinkModel;
    
    class Banner extends Model
    {
        /**
         * @param $id
         * @return null
         */
        public static function getBannerById($id)
        {

    在banner_item表中 查询获取所有banner_id字段

    原生sql

    1. 运行速度快
    2. 对比链式查询显得麻烦
    3. 一般超大型项目追求极致性能使用原生sql语句

     

    $result = Db::query('select * from banner_item where banner_id=?', [$id]);

    TP5的链式查询

    1. 框架运行稍微降低查询速度
    2. 方便,易于理解,使用灵活,提高代码编写速度,降低sql语句错误率
    3. 满足大多数项目

     

    $result = Db::table('banner_item')->where('banner_id', '=', $id) ->select(); //where('字段名','表达式','查询条件')

    对象关系映射查询

    1. 在TP5中链式查询的基础上,使用面向对象的思想
    2. 过于高深,还在学习,后面补充

     

    $result = Db::table('banner_item')

                 ->where(function ($query) use ($id)

                {

                         $query->where('banner_id', '=', $id);

               })

              ->select();

    //ORM Object Relation Mapping 对象关系映射 模型

     

    return $result; } }

    正在学习中,在此记录学习过程中的个人理解,如有错误或更好的理解望指出。

  • 相关阅读:
    POJ2299--树状数组求逆序数
    每周总结
    2016湖南省赛--A题--2016
    ACM暑期训练总结
    jQuery实现拖动布局并将排序结果保存到数据库
    TP3.2整合kindeditor
    TP3.2整合uplodify文件上传
    Sublime Text3 使用
    ThinkPHP AJAX分页及JS缓存的应用
    Thinkphp分页类使用
  • 原文地址:https://www.cnblogs.com/zzw555/p/9432920.html
Copyright © 2011-2022 走看看