ci框架自定义数据库查询名称(方法)

适合刚接触PHP和ci框架的人,本人也是小白

原因:官方给的数据库查询方法可能不利于记忆使用,官方给的一些方法只能进行基础查询,每次复合查询都需要拼接条件,自己定义定义方法直接调用方法即可

操作步骤:

  1.ci框架官网下载好解压后的文件夹会有application这个目录,在application目录下找到models子目录,在models子目录里建一个PHP文件(名字随便起,如Base_model.php)

  这个文件里就是给你写自己定义的数据库查询方法,但开头要这样写(如下),自己定义的方法写在__construct方法下面

  

<?php 
class Base_model extends CI_Model    {    public $table = "";    public $error = "";//操作数据库产生的错误信息,自行定义的    public $primary_key = "";//主键

public function __construct()    {        if (!isset($this->db)) {            $this->load->database();        }    }}

  2.然后你数据库里有什么表,你就在models目录里建相应的模型(例如有user表,可以建一个User.php模型),以此类推,然后在模型里这样写,不用多写了,(你也可以把方法写这里面,我忽略)

<?phprequire_once "Base_model.php";      //这里模型和Base_model.php都是在models目录下的class User extends Base_model           //这里是大写的User继承Base_model而不是继承CI_model{    public function __construct()    {        parent::__construct();        $this->table = "user";        //这是表名,user表        $this->primary_key = "id";  //这是主键自增id,可不写    }}

  3.我在Base_model.php里有查询所有和修改的方法(这里就举两个简单的小例子,复合方法我后续会更新)

  

<?php
class Base_model extends CI_Model{    public $table = "";    public $error = "";//操作数据库产生的错误信息    public $primary_key = "";//主键

public function __construct()    {        if (!isset($this->db)) {            $this->load->database();        }    }

/**     * @param bool $onlyOne     * 查询这个表的所有数据     * 无需传递参数     */    public function lists($onlyOne=true,$select="*")    {        $this->db->from($this->table);        //这里是表名        $res=$this->db->get();        $row = $res->result_array();        return $row;    }

/**     * 修改数据     * 传俩个数组过来$data=[‘name‘=>$name];     * $data为修改的字段,$where为where条件,两个都是数组     */    public function update($data,$where)    {        return $this->db->update($this->table,$data,$where);    }}

  

  4.上面查询和修改的方法在控制器(控制器都可以用)里的用法

 

 //查询所有数据

  //$this->表名->方法名(要传递的参数);
  $this->user->lists();//

//修改数据

先要有修改的数据(数组)$data,where条件(数组)$where

$data=[‘id‘=>1,‘name‘=>‘lisi‘];
$where=[‘id‘=>$id];
//$this->表名->方法名(要传递的参数);
$this->user->update($data,$where);


				
时间: 2024-10-06 22:03:09

ci框架自定义数据库查询名称(方法)的相关文章

十二、CI框架之数据库查询

一.在database文件中写明数据库相关信息 二.我们数据库中的表如图所示 三.在CI中查询数据库内容 四.在浏览器输出 原文地址:https://www.cnblogs.com/tianpan2019/p/11141224.html

kettle中使用javascript步骤和fireToDB函数实现自定义数据库查询

kettle中使用javascript步骤和fireToDB函数实现自定义数据库查询 假设你需要实现非传统的数据库查询操作,为了讨论这种情景,我们假设你需要读取数据库中的正则表达式,然后检查输入的每行的字段匹配表达式的个数. 在javascript步骤执行数据库查询 在javascript步骤初始化的时候,查询数据库,获取正则表达式记录集.然后每一行的输入数据循环检查是否匹配表达式,如果匹配,记录变量加一,最后把结果写到到前行的新增字段中.思路很清楚,但是如何在javascript步骤实现数据库

CI框架的数据库操作函数

//举例查询 (userid,name,sex为user表的数据库字段)    public function testa(){        $this->load->database();            $query = $this->db->query('SELECT * FROM user');        foreach ($query->result() as $row)        {            echo $row->userid;

ci框架操作数据库基本方法

授课过程中如果涉及到文件夹或目录时,可使用缩进进行演示: application |-----libraries |-----xxx_helper.php system |-----libraries |-----url_helper.php --------------------------------------------------------------------------------------------------------------------------------

php的CI框架相关数据库操作

在使用之前首先应该配置数据库的参数,详见文件application/config/database.php,里面包含主机名,登陆用户名,登录密码,数据库名,编码信息等. 在配置成功后,可以简单的调用:$this->load->database();进行数据库链接. 然后可以使用$this->db->query(),$this->db->insert()等方法对数据库进行相应sql操作,例如下面给出的包含CI框架封装查询特性的相关语句: $sql = "SELE

Spring Security教程(二):自定义数据库查询

Spring Security自带的默认数据库存储用户和权限的数据,但是Spring Security默认提供的表结构太过简单了,其实就算默认提供的表结构很复杂,也不一定能满足项目对用户信息和权限信息管理的要求.那么接下来就讲解如何自定义数据库实现对用户信息和权限信息的管理. 一.自定义表结构 这里还是用的mysql数据库,所以pom.xml文件都不用修改.这里只要新建三张表即可,user表.role表.user_role表.其中user用户表,role角色表为保存用户权限数据的主表,user_

关于我的php 框架,数据库层使用方法

框架中,数据库包含两层,一个zz_db.php , 一个zz_model.php 使用: 项目入口定义数据库参数: //mysqldefine ('ZZ_MYSQL_HOST' , '127.0.0.1');define ('ZZ_MYSQL_USER' , 'root');define ('ZZ_MYSQL_PW' , '');define ('ZZ_MYSQL_DB' , 'microblog_home'); //暂时只有一个数据库操作define ('ZZ_MYSQL_TABLE_PRE'

关于CI框架访问数据库类提示Call to undefined function mysqli_init()

大家好,我曾经是ASP.NET MVC的践行者,现在是PHP,同时也是CodeIgniter框架的初学者和践行者,当时由于项目原因,我被迫给自己打满鸡血,满怀激情的选用Yii2,Lavarel5,CodeIgniter等PHP框架进行项目开发,同你一样被"Call to undefined function mysqli_init()"这个小问题折磨得挠头骚耳,找遍各大论坛依然找不到问题之所在,差点铩羽而归(当时我也按照论坛的提示做了,发现都没有用),好的屁话不多说,现在由我直入正题说

用CI框架向数据库中实现简单的增删改查

以下代码基于CodeIgniter_2.1.3版 用PHP向数据库中实现简单的增删改查(纯代码)请戳 http://www.cnblogs.com/corvoh/p/4641476.html CodeIgniter_2.1.3与PHP5.6的兼容问题请戳 http://www.cnblogs.com/corvoh/p/4649357.html 增: //insert//语法:$bool=$this->db->insert('表名',关联数组); $data=array( 'username'=