CodeIgniter 页面重定向


在构建 Web 应用程序时,我们经常需要将用户从一个页面重定向到另一个页面。 CodeIgniter 的redirect()函数让我们轻松完成这项工作。

语法

redirect( $uri = '', $method = 'auto', $code = NULL )

参数

  • $uri( string ): URI 字符串

  • $method( string ): 重定向方法(‘auto’、‘location’或‘refresh’)

  • $code( string ): HTTP 响应码(通常为 302 或 303)

返回类型

void

第一个参数可以有两种类型的 URI。我们可以将完整的站点 URL 或 URI 段传递给你要定向的控制器。

第二个可选参数可以是 auto、location 或 refresh 三个值中的任何一个。默认为自动。

第三个可选参数仅适用于位置重定向,它允许你发送特定的 HTTP 响应代码。

例子


创建一个名为Redirect_controller.php的控制器,并将其保存在application/controller/Redirect_controller.php

<?php 
    class Redirect_controller extends CI_Controller {
	
        public function index() {
            /*Load the URL helper*/
            $this->load->helper('url');
   
            /*Redirect the user to some site*/
            redirect('http://www.newbiego.com');
        }
		
        public function computer_graphics() {
            /*Load the URL helper*/
            $this->load->helper('url');
            redirect('http://www.newbiego.com/computer_graphics/index.htm');
        }
  
        public function version2() {
            /*Load the URL helper*/
            $this->load->helper('url');
   
            /*Redirect the user to some internal controller’s method*/
            redirect('redirect/computer_graphics');
        }
		
    }
?>

修改application/config/routes.php文件,并在文件末尾添加以下配置。

$route['redirect'] = 'Redirect_controller'; 
$route['redirect/version2'] = 'Redirect_controller/version2'; 
$route['redirect/computer_graphics'] = 'Redirect_controller/computer_graphics';

将 yoursite.com 替换为你站点的域名,在浏览器中访问以下链接执行上述示例。

http://yoursite.com/index.php/redirect

上述 URL 会将你重定向到 newbiego.com 网站,如果你访问以下 URL,则会将你重定向到 newbiego.com 上的计算机图形教程。

http://yoursite.com/index.php/redirect/computer_graphics