Exemple #1
0
 /**
  * Redirect
  *
  * This function redirects the client. This is done by issuing
  * a "Location" header and exiting if wanted.  If you set $rfc2616 to true
  * HTTP will output a hypertext note with the location of the redirect.
  *
  * @static
  * @access  public
  * @return  mixed   Returns true on succes (or exits) or false if headers
  *                  have already been sent.
  * @param   string  $url URL where the redirect should go to.
  * @param   bool    $exit Whether to exit immediately after redirection.
  * @param   bool    $rfc2616 Wheter to output a hypertext note where we're
  *                  redirecting to (Redirecting to <a href="...">...</a>.)
  */
 function redirect($url, $exit = true, $rfc2616 = false)
 {
     if (headers_sent()) {
         return false;
     }
     $url = HTTP::absoluteURI($url);
     CSRF::header('Location: ' . $url);
     if ($rfc2616 && isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] != 'HEAD') {
         printf('Redirecting to: <a href="%s">%s</a>.', $url, $url);
     }
     if ($exit) {
         exit;
     }
     return true;
 }