将项目从codeigniter3转至codeigniter4

本文档提供了从旧版CodeIgniter到CI4的重要更改说明,包括配置文件调整、数据库操作变化、视图加载更新等,帮助开发者顺利进行版本迁移。

一楼文档:CI4中翻文档 https://codeigniter-chinese.github.io/codeigniter4-user-guide/

    只列举我在升级中遇到的问题,更多问题可以参考手册或讨论

 

 

1.公用配置(如数据库)写入.env 文件,baseURL符合http://example.com带协议名

2.不再是$this->db直接引用数据库,用$dbSource = $this->db->table($table_name);取代

3.查询结果不再有$query->num_rows(),使用$query->resultID->num_rows取代.应该有其他更标准的方法

4.不再有$query->result_array(),使用$query->getResultArray();取代

5.不再有$this->load->view('index', $data);,使用return view('index', $data);取代

6.开启session:$this->session = \Config\Services::session();$this->session->start();

7.不再有$this->input->post();,	使用use Config\Services;$request = Services::request();

$request->getPost();取代

8.不再有log_message('INFO',$message),使用log_message('8',$message)取代

9.不再有$this->load->model(“example_model”); 使用use App\Models\Example_model;$this->example_model = new Example_model();取代

10.不再有$query->row_array(),使用$query->getRowArray();取代

11.事务关键字改为transStart、 transStatus 、transComplete 、transRollback

12.不再有$this->db->last_query(),(仅限继承了数据库基类的model中)使用

$getLastQuery = $this->db->getLastQuery(); $getLastQuery->getQuery();取代

13. CSPE安全配置(基于对每个文件添加标识防止调用外部文件和跨站脚本) Config/App.php 配置 public $CSPEnabled = true;

14.session需要配置保存路径 配置名为sessionSavePath

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值