支持HTML、JS、PHP重定向的多功能跳转的PHP封装函数

分类:PHP_Python| 发布:佚名| 查看:220 | 发表时间:2014/7/8

PHP 跳转,即重定向浏览器到指定的 URL,是一个很常见的功能。这种功能也有一些细节性的要求,比如等待多少秒以后跳转,用不用JavaScript实现跳转,等等。下面的跳转方法考虑到很多,并参数化,可以用到具体的项目当中。

01<?php  
02/**  
03 * 重定向浏览器到指定的 URL  
04 *  
05 * @param string $url 要重定向的 url  
06 * @param int $delay 等待多少秒以后跳转  
07 * @param bool $js 指示是否返回用于跳转的 JavaScript 代码  
08 * @param bool $jsWrapped 指示返回 JavaScript 代码时是否使用 <mce:script type="text/javascript"><!--  标签进行包装  
09 * @param bool $return 指示是否返回生成的 JavaScript 代码  
10 */   
11function redirect($url, $delay = 0, $js = false, $jsWrapped = true, $return = false)
12    {    
13  $delay = (int)$delay;    
14  if (!$js) {    
15    if (headers_sent() || $delay > 0) {    
16      echo <<<EOT    
17  <html>    
18  <head>    
19  <meta http-equiv="refresh" content="{$delay};URL={$url}" />    
20  </head>    
21  </html>    
22EOT;    
23      exit;    
24    } else {    
25      header("Location: {$url}");    
26      exit;    
27    }    
28  }    
29      $out = '';    
30  if ($jsWrapped) {    
31    $out .= '<script language="JavaScript" type="text/javascript">';    
32  }    
33  $url = rawurlencode($url);    
34  if ($delay > 0) {    
35    $out .= "window.setTimeOut(function () { document.location='{$url}'; }, {$delay});";    
36  } else {    
37    $out .= "document.location='{$url}';";    
38  }    
39  if ($jsWrapped) {    
40    $out .= '
41// --></mce:script>';    
42  }    
43      if ($return) {    
44    return $out;    
45  }    
46      echo $out;    
47  exit;    
48}   
49?>
365据说看到好文章不转的人,服务器容易宕机
原创文章如转载,请注明:转载自郑州网建-前端开发 http://camnpr.com/
本文链接:http://camnpr.com/php-python/1454.html

相关文章