问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

CodeIgniter ThinkPHP 框架 新手学习

发布网友 发布时间:2022-04-08 01:45

我来回答

4个回答

懂视网 时间:2022-04-08 06:06

可以创建多个数据库连接配置,通过$active_group选择使用哪个数据库连接 $active_group = ‘default‘; // 配置是否加载查询构建类,默认为TRUE,通常保持默认值 $query_builder = TRUE; // 数据库连接配置,可以有多个连接配置,索引需要区分开 $db[‘default‘] = array( ‘dsn‘ => ‘‘, ‘hostname‘ => ‘localhost‘, // ip ‘username‘ => ‘root‘, // 用户名 ‘password‘ => ‘123456‘, // 密码 ‘database‘ => ‘workplatform‘, // 数据库名称 ‘dbdriver‘ => ‘mysqli‘, // 使用什么库访问数据库 // 目前可以支持cubrid,ibase,mssql,mysql,mysqli,oci8 // odbc, pdo, postgre, sqlite, sqlite3, sqlsrv ‘dbprefix‘ => ‘‘, // 表前缀 ‘pconnect‘ => FALSE, ‘db_debug‘ => TRUE, ‘cache_on‘ => FALSE, // 是否启用查询缓存 ‘cachedir‘ => ‘‘, // 查询缓存目录 ‘char_set‘ => ‘utf8‘, ‘dbcollat‘ => ‘utf8_general_ci‘, ‘swap_pre‘ => ‘‘, // 交换表前缀,表前缀的替换写法 ‘encrypt‘ => FALSE, ‘compress‘ => FALSE, ‘stricton‘ => FALSE, ‘failover‘ => array(), ‘save_queries‘ => TRUE );

在使用数据库前,需要使用装载器来加载数据库对象

$this->load->database();

装载完成后,$this->db就是这个数据库对象,以后的数据操作都是调用这个对象的方法进行

首先定义SQL语句:

$sql = ‘SELECT * FROM user‘;

再调用db对象的query方法进行查询

$result = $this->db->query($sql);

返回值$result是一个对象,通过调用它的方法可以返回不同形式的结果,例如:调用它的result()方法获取查询结果

$users = $result->result();

此时,$users是一个对象数组,或者调用它的result_array()方法获取关联数组查询结果

$users = $result->result_array();

调用row()方法以对象形式返回第一条记录或第几条记录

$users = $result->row();

但是,如果SQL是增、删、修改语句,query()方法将返回TRUE或FALSE,此时通过db的方法可以获取执行的结果,比如:

$this->db->affected_rows(); // 获取影响的行数
$this->db->insert_id(); // 获取插入数据的id

在执行数据库操作前,由于不知道在查询前$this->db是否已经生成,因此都需要调用$this->load->database()方法,通过修改/application/config/autoload.php文件,可以让CI自动加载数据库

$autoload[‘libraries‘] = array(‘database‘);

如果SQL语句中的变量过多,会影响语句的编写,这时可以采用占位符来解决

$data[0] = ‘dj‘;
$data[1] = ‘123456‘;
$sql = "INSERT INTO user (account, password, usertype, username) VALUES (‘1231‘, ?, ‘1‘, ?)";
$result = $this->db->query($sql, $data);

传入的数组中的元素会依次取代SQL中的?,生成实际的SQL语句

备注:在测试这段代码时,由于错误的在字段名两侧加上了’,造成一直报错,引以为戒

CodeIgniter学习笔记(七)——CI中的数据库操作

标签:

热心网友 时间:2022-04-08 03:14

php比较熟练了呢,就学thinkphp;
刚入门呢,就学codeigniter。

热心网友 时间:2022-04-08 04:32

学thinkphp吧 中文的 教程 例子比较多

热心网友 时间:2022-04-08 06:07

..
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 快手怎样发图片 如何看庄家成本? 如何分析股票庄家的成本价? 在股市里怎样识别庄家的持仓成本? 如何分析庄家的成本 - 信息提示 扫描全能王回收站文件能保存多长时间 华为手机怎么关闭激活锁? 一个洗衣机和一台热水器共1400元洗衣机比热水器便宜100元洗衣机要多少钱? 阿里星球福字怎么扫?阿里星球扫福字教程 CodeIgniter 是什么? 山东省淄博市淄川区在哪里查征信 张店哪个银行打征信 淄博24小时征信报告去哪里打? 淄博临淄的中国人民银行还能打征信吗? 秋冬季适合喝什么茶养生?净雪皇-扎雅养生茶好吗? 美少女万华镜4乱码 美少女万华镜4汉化补丁出错 - 信息提示 美少女万华镜4为什么汉化硬盘版打开游戏还是中文 求美少女万华镜1~4汉化版的 老年白内障饮食原则有哪些? 白内障症状 在吃的方面应该注意哪些 白内障患者有什么饮食禁忌呢? 眼睛做完白内障吃饭要注意什么 白内障手术后饮食要注意什么? 做完白内障手术吃什么对病情有好处? 牧原股份股价为什么长期走弱?牧原股份2021季报?牧原股份如何变身成为年度牛股? 为什么鸡蛋放在盐上就不会倒 昭衍新药股价为什么长期走弱?昭衍新药2021季报?昭衍新药如何变身成为年度牛股? 红宝丽股价为什么长期走弱?红宝丽2021季报?红宝丽如何变身成为年度牛股? 闽东电力股价为什么长期走弱?闽东电力2021季报?闽东电力如何变身成为年度牛股? 冀中能源股价为什么长期走弱?冀中能源2021季报?冀中能源如何变身成为年度牛股? 圣阳股份股价为什么长期走弱?圣阳股份2021季报?圣阳股份如何变身成为年度牛股? 广誉远股价为什么长期走弱?广誉远2021季报?广誉远如何变身成为年度牛股? 宏达股份股价为什么长期走弱?宏达股份2021季报?宏达股份如何变身成为年度牛股? 比亚迪股价为什么长期走弱?比亚迪2021季报?比亚迪如何变身成为年度牛股? 金种子酒股价为什么长期走弱?金种子酒2021季报?金种子酒如何变身成为年度牛股? 远兴能源股价为什么长期走弱?远兴能源2021季报?远兴能源如何变身成为年度牛股? 苏宁环球股价为什么长期走弱?苏宁环球2021季报?苏宁环球如何变身成为年度牛股?