zoukankan      html  css  js  c++  java
  • 简单灵活的 PHP页面跳转函数

    <?
            function Location($url = null){        
                    $location = null;
                    if ( !$url) {
                            $url =  $_SERVER['PHP_SELF'];
                    }
                    elseif ( substr($url,0,1) == '?' ) {
                            $url = $_SERVER['PHP_SELF'] . $url;
                    }
                    if ( substr($url,0,7) === 'http://' or substr($url,0,8) === 'https://' ) {
                            $location = $url;
                    }
                    else {
                            $port = null;
                            if ( $_SERVER['SERVER_PORT'] == 443 ) {
                                    $protocol = 'https://';
                            }        
                            else {
                                    $protocol = 'http://';
                                    $checkPoint=explode(":",$_SERVER['HTTP_HOST']);
                                     if (count($checkPoint)==0) {
                                             $port = ':'.$_SERVER['SERVER_PORT'];        
                                     }                                
                            }
                            $dir = dirname($_SERVER['SCRIPT_NAME']);
                            if ( $dir === "/" ) {
                                    $dir = "";
                            }
                            if ( substr($url,0,2) === './' ) {
                                    if ( $dir ) {
                                            $location = $protocol . $_SERVER['HTTP_HOST'] . $port . '/' . $dir        . '/' . basename($url);
                                    }
                                    else {
                                            $location = $protocol . $_SERVER['HTTP_HOST'] . $port . '/' . basename($url);
                                    }
                            }
                            elseif ( substr($url,0,1) === "/" ) {
                                    $location = $protocol . $_SERVER['HTTP_HOST'] . $port . $url;
                            }
                            else {
                                    $location = $protocol . $_SERVER['HTTP_HOST'] . $port . $dir . '/' . $url;
                            }
                    }
                    header("Location: $location");
                    exit();

            }

    ?>

    // 跳转到百度首页 
    Location('http://www.baidu.com');
  • 相关阅读:
    当数据库结构改变时,需要将数据库删除再创建
    命名空间“System.Web.Mvc”中不存在类型或命名空间“Ajax”(是否缺少程序集引用?)
    jqGrid 各种参数 详解
    二维数组最小路径和
    动态规划:最大连续子序列和
    最长递增子序列
    java单例模式的几种实现
    java多线程的实现方法
    sleep与wait的区别
    数组旋转
  • 原文地址:https://www.cnblogs.com/qhorse/p/4589251.html
Copyright © 2011-2022 走看看