首页 > 编程 > PHP > 正文

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

2019-11-21 23:53:09
字体:
来源:转载
供稿:网友

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

<?php   /**    * 重定向浏览器到指定的 URL    *    * @param string $url 要重定向的 url    * @param int $delay 等待多少秒以后跳转    * @param bool $js 指示是否返回用于跳转的 JavaScript 代码    * @param bool $jsWrapped 指示返回 JavaScript 代码时是否使用 <mce:script type="text/javascript"><!--  标签进行包装    * @param bool $return 指示是否返回生成的 JavaScript 代码    */    function redirect($url, $delay = 0, $js = false, $jsWrapped = true, $return = false)     {       $delay = (int)$delay;       if (!$js) {         if (headers_sent() || $delay > 0) {           echo <<<EOT       <html>       <head>       <meta http-equiv="refresh" content="{$delay};URL={$url}" />       </head>       </html>     EOT;           exit;         } else {           header("Location: {$url}");           exit;         }       }           $out = '';       if ($jsWrapped) {         $out .= '<script language="JavaScript" type="text/javascript">';       }       $url = rawurlencode($url);       if ($delay > 0) {         $out .= "window.setTimeOut(function () { document.location='{$url}'; }, {$delay});";       } else {         $out .= "document.location='{$url}';";       }       if ($jsWrapped) {         $out .= ' // --></mce:script>';       }           if ($return) {         return $out;       }           echo $out;       exit;     }    ?>

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表