CodeIgniter Flashdata
codeigniter flashdata
在构建 web 应用程序时,我们只需要存储一些数据,然后我们想删除这些数据。例如,显示一些错误消息或信息消息。在 php 中,我们必须手动完成,但 codeigniter 为我们简化了这项工作。在 codeigniter 中,flashdata 只会在下一个请求之前可用,并且会自动删除。
添加闪存数据
我们可以简单地存储 flashdata,如下所示。
$this->session->mark_as_flash('item');
- mark_as_flash() 函数用于此目的,它只需要存储值的一个参数。我们还可以传递一个数组来存储多个值。
- 也可以使用set_flashdata() 函数,它接受两个参数,名称和值,如下所示。我们也可以传递一个数组。
$this->session->set_flashdata('item','value');
检索闪存数据
可以使用 flashdata() 函数检索 flashdata,该函数采用要获取的项目的一个参数,如下所示。 flashdata() 函数确保您只获取闪存数据而不是任何其他数据。
$this->session->flashdata('item');
如果你不传递任何参数,那么你可以得到一个具有相同功能的数组。
示例
创建一个名为 flashdata_controller.php 的类并将其保存在 application/controller/flashdata_controller.php。
class flashdata_controller extends ci_controller { public function index() { //load session library $this--->load->library('session'); //redirect to home page $this->load->view('flashdata_home'); } public function add() { //load session library $this->load->library('session'); $this->load->helper('url'); //add flash data $this->session->set_flashdata('item','item-value'); //redirect to home page redirect('flashdata'); } } ?>
创建一个名为 flashdata_home.php的视图文件并将其保存在 application/views/flashdata_home.php
codeigniter flashdata example flash data exampleecho $this--->session->flashdata('item'); ?>
click here to add flash data.
在 application/config/routes.php 中的 routes.php 文件中进行更改,并在文件末尾添加以下行。
$route['flashdata'] = 'flashdata_controller'; $route['flashdata/add'] = 'flashdata_controller/add';
通过访问以下链接执行上述示例。将 yoursite.com 替换为您网站的网址。
http://yoursite.com/index.php/flashdata
访问上述 url 后,您将看到如下所示的屏幕。
点击" 点击这里"链接,您将看到如下所示的屏幕。在这里,您将在此屏幕中看到闪存数据变量的值。再次刷新页面,您将看到像上面这样的屏幕和闪存数据变量将被自动删除。